Skip to content
This repository has been archived by the owner on Feb 24, 2020. It is now read-only.

Commit

Permalink
build: Rework to use nonrecursive makefile.
Browse files Browse the repository at this point in the history
This largely keeps the same configure interface, that is -
./autogen.sh for the first time and then ./configure --enable-foo
--with-bar=baz && make.

There is new way of running functional tests - ./configure
--enable-functional-tests && make check

Removes the generation of aggregate script in favor of using make to
install files into ACI rootfs.

Adds dependency tracking for binaries (both go and C).

See rkt-bs-todo for a list of things that are left to be done.
  • Loading branch information
krnowak committed Jul 10, 2015
1 parent c1f54c8 commit 831a343
Show file tree
Hide file tree
Showing 67 changed files with 5,171 additions and 836 deletions.
23 changes: 8 additions & 15 deletions .gitignore
@@ -1,15 +1,8 @@
bin/
gopath/
*.sw[ponm]
.DS_Store
.vagrant
tests/image/rootfs/
tests/inspect/inspect
tests/*.aci
tests/*.log
autom4te.cache
Makefile
config.log
config.status
build-*
*.test
*~

/autom4te.cache
/config.log
/config.status
/configure
/makelib/variables.mk
/build-rkt-*
5 changes: 3 additions & 2 deletions .travis.yml
Expand Up @@ -14,5 +14,6 @@ install:
- go get golang.org/x/tools/cmd/vet

script:
- ./configure
- make stage0-test SHELL="/bin/bash -v"
- ./autogen.sh
- ./configure --with-stage1=none
- make check
32 changes: 32 additions & 0 deletions Makefile
@@ -0,0 +1,32 @@
# make "all" a default target
all:

# makelib/inc.mk must be included first!
include makelib/inc.mk
include makelib/file-ops-prolog.mk
include makelib/variables.mk
include makelib/misc.mk

SHELL := $(BASH_SHELL)
TOPLEVEL_STAMPS :=
TOPLEVEL_CHECK_STAMPS :=
TOPLEVEL_SUBDIRS := rkt tests

ifneq ($(RKT_STAGE1_USR_FROM),none)
TOPLEVEL_SUBDIRS += stage1
endif

$(call inc-one,actool.mk)
$(call inc-many,$(foreach sd,$(TOPLEVEL_SUBDIRS),$(sd)/$(sd).mk))

all: $(TOPLEVEL_STAMPS)

$(TOPLEVEL_CHECK_STAMPS): $(TOPLEVEL_STAMPS)

.INTERMEDIATE: $(TOPLEVEL_CHECK_STAMPS)

check: $(TOPLEVEL_CHECK_STAMPS)

include makelib/file-ops-epilog.mk

.PHONY: all check
145 changes: 0 additions & 145 deletions Makefile.in

This file was deleted.

16 changes: 16 additions & 0 deletions actool.mk
@@ -0,0 +1,16 @@
$(call setup-stamp-file,ACTOOL_STAMP)

# variables for makelib/build_go.mk
BGB_PKG_IN_REPO := Godeps/_workspace/src/github.com/appc/spec/actool
BGB_BINARY := $(ACTOOL)

CLEAN_FILES += $(ACTOOL)

$(ACTOOL_STAMP): $(ACTOOL)
touch "$@"

$(ACTOOL): $(MK_PATH) | $(BINDIR)

include makelib/build_go_bin.mk

# ACTOOL_STAMP deliberately not cleared
2 changes: 1 addition & 1 deletion autogen.sh
@@ -1,2 +1,2 @@
#!/bin/bash -e
autoreconf --install
autoreconf --install --warnings=all --force

0 comments on commit 831a343

Please sign in to comment.