diff --git a/alib2algo/makefile b/alib2algo/makefile index d37762de574de179767d49b3ea3a574023778728..9f806f21b7de9dc9065cd1f4ed05ba4bb00017ef 100644 --- a/alib2algo/makefile +++ b/alib2algo/makefile @@ -16,12 +16,14 @@ TEST_OBJECTS_RELEASE:=$(patsubst test-src/%.cpp, test-obj-release/%.o, $(shell f .PHONY: all build-debug build-tests-debug clean-debug doc + + all: @echo "What to do master?" -debug: build-debug build-tests-debug +debug: unit-test-debug -release: build-release build-tests-release +release: unit-test-release clean: clean-debug clean-release $(RM) -r doc @@ -30,11 +32,11 @@ test: unit-test-debug unit-test-release -lib-debug/$(LIBRARY): obj-debug/ $(OBJECTS_DEBUG) +lib-debug/$(LIBRARY): $(OBJECTS_DEBUG) mkdir -p $(dir $@) $(CXX) $(OBJECTS_DEBUG) -o $@ $(LDFLAGS_DEBUG) -lib-release/$(LIBRARY): obj-release/ $(OBJECTS_RELEASE) +lib-release/$(LIBRARY): $(OBJECTS_RELEASE) mkdir -p $(dir $@) $(CXX) $(OBJECTS_RELEASE) -o $@ $(LDFLAGS_RELEASE) @@ -103,11 +105,11 @@ build-release: lib-release/$(LIBRARY) -test-bin-debug/$(TESTBIN): test-obj-debug/ lib-debug/$(LIBRARY) $(TEST_OBJECTS_DEBUG) +test-bin-debug/$(TESTBIN): lib-debug/$(LIBRARY) $(TEST_OBJECTS_DEBUG) mkdir -p $(dir $@) $(CXX) $(TEST_OBJECTS_DEBUG) -o $@ $(TEST_LDFLAGS_DEBUG) -test-bin-release/$(TESTBIN): test-obj-release/ lib-release/$(LIBRARY) $(TEST_OBJECTS_RELEASE) +test-bin-release/$(TESTBIN): lib-release/$(LIBRARY) $(TEST_OBJECTS_RELEASE) mkdir -p $(dir $@) $(CXX) $(TEST_OBJECTS_RELEASE) -o $@ $(TEST_LDFLAGS_RELEASE) diff --git a/alib2data/makefile b/alib2data/makefile index 7b0e587e62f62745bb06d58b2de5f927208d217c..9c4d9447039948bd673efa5013724940d6641a1b 100644 --- a/alib2data/makefile +++ b/alib2data/makefile @@ -21,9 +21,9 @@ TEST_OBJECTS_RELEASE:=$(patsubst test-src/%.cpp, test-obj-release/%.o, $(shell f all: @echo "What to do master?" -debug: build-debug build-tests-debug +debug: unit-test-debug -release: build-release build-tests-release +release: unit-test-release clean: clean-debug clean-release $(RM) -r doc @@ -32,11 +32,11 @@ test: unit-test-debug unit-test-release -lib-debug/$(LIBRARY): obj-debug/ $(OBJECTS_DEBUG) +lib-debug/$(LIBRARY): $(OBJECTS_DEBUG) mkdir -p $(dir $@) $(CXX) $(OBJECTS_DEBUG) -o $@ $(LDFLAGS_DEBUG) -lib-release/$(LIBRARY): obj-release/ $(OBJECTS_RELEASE) +lib-release/$(LIBRARY): $(OBJECTS_RELEASE) mkdir -p $(dir $@) $(CXX) $(OBJECTS_RELEASE) -o $@ $(LDFLAGS_RELEASE) @@ -105,11 +105,11 @@ build-release: lib-release/$(LIBRARY) -test-bin-debug/$(TESTBIN): test-obj-debug/ lib-debug/$(LIBRARY) $(TEST_OBJECTS_DEBUG) +test-bin-debug/$(TESTBIN): lib-debug/$(LIBRARY) $(TEST_OBJECTS_DEBUG) mkdir -p $(dir $@) $(CXX) $(TEST_OBJECTS_DEBUG) -o $@ $(TEST_LDFLAGS_DEBUG) -test-bin-release/$(TESTBIN): test-obj-release/ lib-release/$(LIBRARY) $(TEST_OBJECTS_RELEASE) +test-bin-release/$(TESTBIN): lib-release/$(LIBRARY) $(TEST_OBJECTS_RELEASE) mkdir -p $(dir $@) $(CXX) $(TEST_OBJECTS_RELEASE) -o $@ $(TEST_LDFLAGS_RELEASE) @@ -201,3 +201,4 @@ FORCE: doc: doxygen + diff --git a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp index 039f42e8bdb30602daa169012a363381887db1fc..054fa7492d854225860041d909f3b576ea3fb827 100644 --- a/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp +++ b/alib2data/src/automaton/PDA/RealTimeHeightDeterministicDPDA.cpp @@ -13,7 +13,7 @@ namespace automaton { -RealTimeHeightDeterministicDPDA::RealTimeHeightDeterministicDPDA(const State& initialState, const alphabet::Symbol& bottomOfTheStackSymbol) : BottomOfTheStackSymbolPushdownStoreAlphabet(bottomOfTheStackSymbol), SingleInitialState(initialState) { +RealTimeHeightDeterministicDPDA::RealTimeHeightDeterministicDPDA(const State& initialState, const alphabet::Symbol& bottomOfTheStackSymbol) : SingleInitialState(initialState), BottomOfTheStackSymbolPushdownStoreAlphabet(bottomOfTheStackSymbol) { } diff --git a/makefile b/makefile index 46b5505029cc13d392bd76fc7133a75e2223a7b8..8739611f78e5fee186541ff721658ed3452f3df1 100644 --- a/makefile +++ b/makefile @@ -20,38 +20,89 @@ SUBDIRS_BINS = acat2 \ SUBDIRS_WITH_MAKE = $(dir $(wildcard */makefile)) -.PHONY: $(addsuffix .build-debug , $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) \ +.PHONY: $(addsuffix .all-debug , $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) \ + $(addsuffix .all-release, $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS))\ + $(addsuffix .build-debug , $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) \ $(addsuffix .build-release, $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS))\ $(addsuffix .build-debug-tests , $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) \ $(addsuffix .build-release-tests, $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS))\ - build-debug build-test-debug unit-test-debug copy-debug test-debug clean-debug \ - build-release build-test-release unit-test-release copy-release test-release clean-release \ - doc all + all-debug build-debug build-test-debug unit-test-debug clean-debug \ + all-release build-release build-test-release unit-test-release clean-release \ + debug release clean doc all # ifneq (3.82, $(firstword $(sort $(MAKE_VERSION) 3.81))) # $(error version at least 3.82 is needed for make to work) # endif -all: debug release doc +all: + @echo "What to do master?" -debug : build-debug build-tests-debug unit-test-debug copy-debug test-debug +debug : all-debug + mkdir -p $(addsuffix -debug, $(BINFOLDER)) + rm -rf $(addsuffix -debug, $(BINFOLDER))/* + for dir in $(CORE_LIB) $(SUBDIRS_LIBS); do \ + cp $$dir/lib-debug/* $(addsuffix -debug, $(BINFOLDER)); \ + done + for dir in $(SUBDIRS_BINS); do \ + cp $$dir/bin-debug/* $(addsuffix -debug, $(BINFOLDER)); \ + done + ./tests.aconversion.sh debug -release: build-release build-tests-release unit-test-release copy-release test-release +release: all-release + mkdir -p $(addsuffix -release, $(BINFOLDER)) + rm -rf $(addsuffix -release, $(BINFOLDER))/* + for dir in $(CORE_LIB) $(SUBDIRS_LIBS); do \ + cp $$dir/lib-release/* $(addsuffix -release, $(BINFOLDER)); \ + done + for dir in $(SUBDIRS_BINS); do \ + cp $$dir/bin-release/* $(addsuffix -release, $(BINFOLDER)); \ + done + ./tests.aconversion.sh release clean : clean-debug clean-release $(RM) -r bin-debug bin-release + + +all-debug : $(addsuffix .all-debug , $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) + +all-release : $(addsuffix .all-release, $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) + + + build-debug : $(addsuffix .build-debug , $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) build-release: $(addsuffix .build-release, $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) -build-tests-debug : build-debug $(addsuffix .build-tests-debug , $(CORE_LIB) $(SUBDIRS_LIBS)) +build-tests-debug : $(addsuffix .build-tests-debug , $(CORE_LIB) $(SUBDIRS_LIBS)) + +build-tests-release: $(addsuffix .build-tests-release, $(CORE_LIB) $(SUBDIRS_LIBS)) + + + +$(addsuffix .all-debug, $(CORE_LIB)): + $(MAKE) debug -C $(basename $@) + +$(addsuffix .all-debug, $(SUBDIRS_LIBS)): $(addsuffix .all-debug, $(CORE_LIB)) + $(MAKE) debug -C $(basename $@) + +$(addsuffix .all-debug, $(SUBDIRS_BINS)): $(addsuffix .all-debug, $(SUBDIRS_LIBS)) + $(MAKE) debug -C $(basename $@) + + -build-tests-release: build-release $(addsuffix .build-tests-release, $(CORE_LIB) $(SUBDIRS_LIBS)) +$(addsuffix .all-release, $(CORE_LIB)): + $(MAKE) release -C $(basename $@) + +$(addsuffix .all-release, $(SUBDIRS_LIBS)): $(addsuffix .build-release, $(CORE_LIB)) + $(MAKE) release -C $(basename $@) + +$(addsuffix .all-release, $(SUBDIRS_BINS)): $(addsuffix .build-release, $(SUBDIRS_LIBS)) + $(MAKE) release -C $(basename $@) @@ -105,66 +156,18 @@ clean-release: -copy-debug: $(addsuffix .build-debug, $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) - mkdir -p $(addsuffix -debug, $(BINFOLDER)) - rm -rf $(addsuffix -debug, $(BINFOLDER))/* - for dir in $(CORE_LIB) $(SUBDIRS_LIBS); do \ - cp $$dir/lib-debug/* $(addsuffix -debug, $(BINFOLDER)); \ - done - for dir in $(SUBDIRS_BINS); do \ - cp $$dir/bin-debug/* $(addsuffix -debug, $(BINFOLDER)); \ - done - -copy-release: $(addsuffix .build-release, $(CORE_LIB) $(SUBDIRS_LIBS) $(SUBDIRS_BINS)) - mkdir -p $(addsuffix -release, $(BINFOLDER)) - rm -rf $(addsuffix -release, $(BINFOLDER))/* - for dir in $(CORE_LIB) $(SUBDIRS_LIBS); do \ - cp $$dir/lib-release/* $(addsuffix -release, $(BINFOLDER)); \ - done - for dir in $(SUBDIRS_BINS); do \ - cp $$dir/bin-release/* $(addsuffix -release, $(BINFOLDER)); \ - done - - - -# install: -# cp alib/lib/libalib.so $(LIBPATH) -# cp acat/bin/acat $(APPPATH) -# cp aconvert/bin/aconvert $(APPPATH) -# cp aconvert.dot/bin/aconvert.dot $(APPPATH) -# cp aconvert.gastex/bin/aconvert.gastex $(APPPATH) -# cp aminimize/bin/aminimize $(APPPATH) - -# uninstall: -# rm $(LIBPATH)/libalib.so -# rm $(APPPATH)/acat -# rm $(APPPATH)/aconvert -# rm $(APPPATH)/aconvert.dot -# rm $(APPPATH)/aconvert.gastex -# rm $(APPPATH)/aminimize - -unit-test-debug: build-tests-debug +unit-test-debug: for dir in $(CORE_LIB) $(SUBDIRS_LIBS); do \ $(MAKE) unit-test-debug -C $$dir; \ done -unit-test-verbose: build-tests-release +unit-test-verbose: for dir in $(CORE_LIB) $(SUBDIRS_LIBS); do \ $(MAKE) unit-test-release -C $$dir; \ done -test-debug: copy-debug unit-test-debug - ./tests.aconversion.sh debug - - - -test-release: copy-release unit-test-release - ./tests.aconversion.sh release - - - doc: $(MAKE) doc -C alib2data $(MAKE) doc -C alib2algo