1 2# Makefile targets that can be made before running ./configure 3 4############################################################################### 5# show make targets 6# 7.PHONY: help 8help: 9 @echo "" 10 @echo "" 11 @echo "In addition to the standard make targets (all, install, clean, ...), " 12 @echo "the following make targets may be supported (at this level):" 13 @echo "" 14 @echo " make help - print this text" 15 @echo " make DIST - dist + a Makefile that calls ./configure" 16 @echo " make DOXY - create Doxygen documentation" 17 @echo " make RPM - create (source and binary) RPMs" 18 @echo " make DEB - create Debian packages" 19 @echo "" 20 @echo " make SVNUP - update from SVN and ./configure" 21 @echo "" 22 @echo "NOTE: The RPM and DEB targets may fail because they require additional tools" 23 @echo "that may not be present on your machine. Don't worry if that happens, unless" 24 @echo "you really need the RPM and/or Debian packages." 25 @echo "" 26 @echo "The following targets are shortcuts for lazy developers (like the GNU APL " 27 @echo "author) and are not very useful for normal users:" 28 @echo "" 29 @echo " make develop - enable full dependency tracking" 30 @echo " make gprof - make develop + enable gprof profiling" 31 @echo " make python - make develop + build python module" 32 @echo " make parallel - enable multi-core APL (buggy and experimental!)" 33 @echo " make parallel1 - make parallel for benchmarking" 34 @echo "" 35 36############################################################################### 37# a shortcut to ./configure for developing and troubleshooting 38# 39.PHONY: develop 40develop: 41 ./configure --enable-maintainer-mode DEVELOP_WANTED=yes 42 make all 43 44 45############################################################################### 46# a shortcut to ./configure for compiling the python library 47# 48.PHONY: python 49python: 50 ./configure --enable-maintainer-mode DEVELOP_WANTED=yes --with-python 51 make all 52 53 54############################################################################### 55# a shortcut to ./configure for profiling using gprof 56# 57# running apl (in e.g. src) will then produce a file gmon.out which can then be 58# analyzed with gprof apl gmon.out 59# 60.PHONY: gprof 61gprof: 62 ./configure --enable-maintainer-mode DEVELOP_WANTED=yes GPROF_WANTED=yes 63 make all 64 65############################################################################### 66# a shortcut to ./configure for devloping and troubleshooting libapl 67# 68.PHONY: develop_lib 69develop_lib: 70 ./configure --enable-maintainer-mode DEVELOP_WANTED=yes --with-libapl 71 make all 72 73# a shortcut to configure for benchmarking parallel execution 74# 75.PHONY: parallel 76parallel: 77 ./configure --enable-maintainer-mode \ 78 VALUE_CHECK_WANTED=no \ 79 VALUE_HISTORY_WANTED=no \ 80 PERFORMANCE_COUNTERS_WANTED=no \ 81 DYNAMIC_LOG_WANTED=yes \ 82 ASSERT_LEVEL_WANTED=0 \ 83 CORE_COUNT_WANTED=-3 84 make all 85 86# a shortcut to configure for benchmarking parallel execution but with 87# performance counters 88# 89.PHONY: parallel1 90parallel1: 91 ./configure --enable-maintainer-mode \ 92 VALUE_CHECK_WANTED=no \ 93 VALUE_HISTORY_WANTED=no \ 94 PERFORMANCE_COUNTERS_WANTED=yes \ 95 DYNAMIC_LOG_WANTED=yes \ 96 ASSERT_LEVEL_WANTED=0 \ 97 CORE_COUNT_WANTED=-3 98 make all 99 100