From a4019154e77559fea867a5bf519151b60d4a3ce9 Mon Sep 17 00:00:00 2001 From: Fredrik Johansson Date: Mon, 18 Aug 2014 22:53:50 +0200 Subject: [PATCH] replace makefiles with version based on the improved flint makefiles --- Makefile.in | 228 ++++++++++----- Makefile.subdirs | 89 ++++++ acb/Makefile | 43 --- acb_calc/Makefile | 43 --- acb_mat/Makefile | 43 --- acb_poly/Makefile | 43 --- arb/Makefile | 43 --- arb_calc/Makefile | 43 --- arb_mat/Makefile | 43 --- arb_poly/Makefile | 43 --- arf/Makefile | 43 --- bernoulli/Makefile | 43 --- config.h | 8 + configure | 641 +++++++++++++++++++++++++++++++++++++------ elefun/Makefile | 43 --- fmpcb/Makefile | 43 --- fmpcb_calc/Makefile | 43 --- fmpcb_mat/Makefile | 43 --- fmpcb_poly/Makefile | 43 --- fmpr/Makefile | 43 --- fmprb/Makefile | 43 --- fmprb_calc/Makefile | 43 --- fmprb_mat/Makefile | 43 --- fmprb_poly/Makefile | 43 --- fmpz_extras/Makefile | 43 --- gamma/Makefile | 43 --- hypgeom/Makefile | 43 --- mag/Makefile | 43 --- partitions/Makefile | 43 --- zeta/Makefile | 43 --- 30 files changed, 819 insertions(+), 1265 deletions(-) create mode 100644 Makefile.subdirs delete mode 100644 acb/Makefile delete mode 100644 acb_calc/Makefile delete mode 100644 acb_mat/Makefile delete mode 100644 acb_poly/Makefile delete mode 100644 arb/Makefile delete mode 100644 arb_calc/Makefile delete mode 100644 arb_mat/Makefile delete mode 100644 arb_poly/Makefile delete mode 100644 arf/Makefile delete mode 100644 bernoulli/Makefile create mode 100644 config.h delete mode 100644 elefun/Makefile delete mode 100644 fmpcb/Makefile delete mode 100644 fmpcb_calc/Makefile delete mode 100644 fmpcb_mat/Makefile delete mode 100644 fmpcb_poly/Makefile delete mode 100644 fmpr/Makefile delete mode 100644 fmprb/Makefile delete mode 100644 fmprb_calc/Makefile delete mode 100644 fmprb_mat/Makefile delete mode 100644 fmprb_poly/Makefile delete mode 100644 fmpz_extras/Makefile delete mode 100644 gamma/Makefile delete mode 100644 hypgeom/Makefile delete mode 100644 mag/Makefile delete mode 100644 partitions/Makefile delete mode 100644 zeta/Makefile diff --git a/Makefile.in b/Makefile.in index 2f8ce07e..f2158dbe 100644 --- a/Makefile.in +++ b/Makefile.in @@ -1,106 +1,196 @@ -LIBS=-L$(CURDIR) -L$(ARB_FLINT_LIB_DIR) -L$(ARB_GMP_LIB_DIR) -L$(ARB_MPFR_LIB_DIR) -larb -lflint -lmpfr -lgmp -lpthread -lm -LIBS2=-L$(ARB_FLINT_LIB_DIR) -L$(ARB_GMP_LIB_DIR) -L$(ARB_MPFR_LIB_DIR) -lflint -lmpfr -lgmp -lpthread -lm -INCS=-I$(CURDIR) -I$(ARB_GMP_INCLUDE_DIR) -I$(ARB_MPFR_INCLUDE_DIR) -I$(ARB_FLINT_INCLUDE_DIR) -LINKLIBS=$(ARB_GMP_LIB_DIR)/libgmp.a $(ARB_MPFR_LIB_DIR)/libmpfr.a $(ARB_FLINT_LIB_DIR)/libflint.so +ifdef $(DLPATH) + $(DLPATH):=$($(DLPATH)):$(DLPATH_ADD) +else + $(DLPATH):=$(DLPATH_ADD) +endif + +QUIET_CC = @echo ' ' CC ' ' $@; +QUIET_CXX = @echo ' ' CXX ' ' $@; +QUIET_AR = @echo ' ' AR ' ' $@; + +AT=@ + +BUILD_DIRS = fmpr arf mag arb arb_mat arb_poly arb_calc acb acb_mat acb_poly \ + acb_calc fmprb fmprb_poly fmprb_mat fmprb_calc fmpcb fmpcb_poly fmpcb_mat \ + fmpcb_calc elefun bernoulli hypgeom gamma zeta fmpz_extras partitions \ + $(EXTRA_BUILD_DIRS) + +TEMPLATE_DIRS = -LD_LIBRARY_PATH:=${CURDIR}:${ARB_FLINT_LIB_DIR}:${ARB_MPFR_LIB_DIR}:${ARB_GMP_LIB_DIR}:${LD_LIBRARY_PATH} -export LD_LIBRARY_PATH export -SOURCES = $(wildcard *.c) +SOURCES = +LIB_SOURCES = $(wildcard $(patsubst %, %/*.c, $(BUILD_DIRS))) $(patsubst %, %/*.c, $(TEMPLATE_DIRS)) -HEADERS = $(wildcard *.h) +HEADERS = $(patsubst %, %.h, $(BUILD_DIRS)) OBJS = $(patsubst %.c, build/%.o, $(SOURCES)) +LIB_OBJS = $(patsubst %, build/%/*.o, $(BUILD_DIRS)) LOBJS = $(patsubst %.c, build/%.lo, $(SOURCES)) - -LIB_SOURCES = $(SOURCES) $(foreach dir, $(BUILD_DIRS), $(wildcard $(dir)/*.c)) - -LIB_OBJS = $(patsubst %.c, build/%.lo, $(LIB_SOURCES)) +LIB_LOBJS = $(patsubst %, build/%/*.lo, $(BUILD_DIRS)) +MOD_LOBJS = $(patsubst %, build/%.lo, $(BUILD_DIRS)) EXMP_SOURCES = $(wildcard examples/*.c) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - EXMPS = $(patsubst %.c, %, $(EXMP_SOURCES)) -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) +TEST_SOURCES = $(wildcard test/*.c) +TESTS = $(patsubst %.c, build/%$(EXEEXT), $(TEST_SOURCES)) -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) +PROF_SOURCES = $(wildcard profile/*.c) +PROFS = $(patsubst %.c, %$(EXEEXT), $(PROF_SOURCES)) -all: all-dirs $(OBJS) recursive library +TUNE_SOURCES = $(wildcard tune/*.c) +TUNE = $(patsubst %.c, %$(EXEEXT), $(TUNE_SOURCES)) -all-dirs: - $(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir);) +EXT_SOURCES = $(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), $(wildcard $(ext)/$(dir)/*.c))) +EXT_TEST_SOURCES = $(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), $(wildcard $(ext)/$(dir)/test/t-*.c))) +EXT_TUNE_SOURCES = $(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), $(wildcard $(ext)/$(dir)/tune/*.c))) +EXT_PROF_SOURCES = $(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), $(wildcard $(ext)/$(dir)/profile/p-*.c))) +EXT_OBJS = $(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), build/$(dir).lo)) +EXT_HEADERS = $(foreach ext, $(EXTENSIONS), $(wildcard $(ext)/*.h)) + +all: library + +quiet: library + +verbose: + $(MAKE) AT= QUIET_CC= QUIET_CXX= QUIET_AR= clean: - $(foreach dir, $(BUILD_DIRS), export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir) clean;) + $(AT)$(foreach dir, $(BUILD_DIRS), BUILD_DIR=../build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) clean || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) clean || exit $$?;)) rm -f $(OBJS) $(LOBJS) $(TESTS) $(PROFS) $(EXMPS) $(ARB_LIB) libarb.a rm -rf build distclean: clean rm -f Makefile -dist: - git archive --format tar --prefix arb-0.0/ trunk > ../arb-0.0.tar; gzip ../arb-0.0.tar - -profile: all profiler.o +profile: library $(PROF_SOURCES) $(EXT_PROF_SOURCES) build/profiler.o mkdir -p build/profile - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c profiler.o -o build/$(prog) $(LIBS);) - $(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir)/profile; export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir) profile;) - -recursive: - $(foreach dir, $(BUILD_DIRS), export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir);) - -examples: all $(LOBJS) library - mkdir -p build/examples - $(foreach prog, $(EXMPS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o build/$(prog) $(LIBS);) - -check: $(ARB_LIB) ifndef MOD - mkdir -p build/test - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o build/$(prog) $(LIBS);) - $(foreach prog, $(TESTS), build/$(prog);) - $(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir)/test; export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir) check;) + $(AT)$(foreach prog, $(PROFS), $(CC) $(ABI_FLAG) -std=c99 -O2 -g $(INCS) $(prog).c build/profiler.o -o build/$(prog) $(LIBS) || exit $$?;) + $(AT)$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir)/profile; BUILD_DIR=../build/$(dir); export BUILD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) profile || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir)/profile; BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) profile || exit $$?;)) else - $(foreach dir, $(MOD), mkdir -p build/$(dir)/test; export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir) check;) + $(AT)$(foreach dir, $(MOD), mkdir -p build/$(dir)/profile; BUILD_DIR=../build/$(dir); export BUILD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) profile || exit $$?;) endif -library: library-recursive $(OBJS) $(LIB_OBJS) - mkdir -p build -ifdef ARB_SHARED - $(CC) -fPIC -shared $(LIB_OBJS) $(LIBS2) -o $(ARB_LIB) -endif -ifdef ARB_STATIC - $(AR) rcs libarb.a $(OBJS) $(LINKLIBS) +tune: library $(TUNE_SOURCES) $(EXT_TUNE_SOURCES) + mkdir -p build/tune + $(AT)$(foreach prog, $(TUNE), $(CC) $(CFLAGS) $(INCS) $(prog).c -o build/$(prog) $(LIBS) || exit $$?;) + $(AT)$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir)/tune; BUILD_DIR=../build/$(dir); export BUILD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) tune || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir)/tune; BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) tune || exit $$?;)) + +examples: library $(EXMP_SOURCES) + mkdir -p build/examples + $(AT)$(foreach prog, $(EXMPS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o build/$(prog) $(LIBS) || exit $$?;) + +$(ARB_LIB): $(LOBJS) $(LIB_SOURCES) $(EXT_SOURCES) $(HEADERS) $(EXT_HEADERS) | build build/interfaces + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir); BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) shared || exit $$?;)) + $(AT)$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir); BUILD_DIR=../build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) shared || exit $$?;) + $(AT)if [ "$(WANT_NTL)" -eq "1" ]; then \ + $(MAKE) build/interfaces/NTL-interface.lo; \ + $(CXX) $(ABI_FLAG) -shared $(EXTRA_SHARED_FLAGS) build/interfaces/NTL-interface.lo $(LOBJS) $(MOD_LOBJS) $(EXT_OBJS) $(LIBS2) -o $(ARB_LIB); \ + fi + $(AT)if [ "$(WANT_NTL)" -ne "1" ]; then \ + $(CC) $(ABI_FLAG) -shared $(EXTRA_SHARED_FLAGS) $(LOBJS) $(MOD_LOBJS) $(EXT_OBJS) $(LIBS2) -o $(ARB_LIB); \ + fi + +libarb.a: $(OBJS) $(LIB_SOURCES) $(EXT_SOURCES) $(HEADERS) $(EXT_HEADERS) | build build/interfaces + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir); BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) static || exit $$?;)) + $(AT)$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir); BUILD_DIR=../build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) static || exit $$?;) + $(AT)if [ "$(ARB_SHARED)" -eq "0" ]; then \ + touch test/t-*.c; \ + $(foreach dir, $(BUILD_DIRS), touch $(dir)/test/t-*.c;) \ + $(foreach ext, $(EXTENSIONS), $(foreach mod, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), touch $(ext)/$(mod)/test/t-*.c;)) \ + fi + $(AT)if [ "$(WANT_NTL)" -eq "1" ]; then \ + $(MAKE) build/interfaces/NTL-interface.o; \ + $(AR) rcs libarb.a build/interfaces/NTL-interface.o; \ + fi + $(QUIET_AR) $(AR) rcs libarb.a $(OBJS); + $(AT)$(foreach mod, $(BUILD_DIRS), $(AR) rcs libarb.a build/$(mod)/*.o || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach mod, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), $(AR) rcs libarb.a build/$(mod)/*.o || exit $$?;)) + +library: + $(AT)if [ "$(ARB_SHARED)" -eq "1" ]; then \ + $(MAKE) shared; \ + fi + $(AT)if [ "$(ARB_STATIC)" -eq "1" ]; then \ + $(MAKE) static; \ + fi + +shared: $(ARB_LIB) + +static: libarb.a + +tests: library $(TESTS) + $(AT)$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir)/test; BUILD_DIR=../build/$(dir); export BUILD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) tests || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir)/test; BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) tests || exit $$?;)) + mkdir -p build/interfaces/test + $(AT)if [ "$(WANT_NTL)" -eq "1" ]; then \ + $(MAKE) build/interfaces/test/t-NTL-interface; \ + fi + +check: library +ifndef MOD + $(AT)$(MAKE) $(TESTS) + $(AT)$(foreach prog, $(TESTS), $(prog) || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir)/test; BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) check || exit $$?;)) + $(AT)$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir)/test; BUILD_DIR=../build/$(dir); export BUILD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) check || exit $$?;) + mkdir -p build/interfaces/test + $(AT)if [ "$(WANT_NTL)" -eq "1" ]; then \ + $(MAKE) build/interfaces/test/t-NTL-interface; \ + build/interfaces/test/t-NTL-interface; \ + fi +else + $(AT)$(foreach dir, $(MOD), test ! -d $(dir) || mkdir -p build/$(dir)/test; BUILD_DIR=../build/$(dir); export BUILD_DIR; test ! -d $(dir) || $(MAKE) -f ../Makefile.subdirs -C $(dir) check || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(AT)$(foreach dir, $(MOD), MOD_DIR=$(dir); export MOD_DIR; test ! -d $(ext)/$(dir) || mkdir -p build/$(dir)/test; BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; test ! -d $(ext)/$(dir) || $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) check || exit $$?;)) endif -library-recursive: - $(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir); export BUILD_DIR=../build/$(dir); $(MAKE) -C $(dir) library;) - -$(ARB_LIB): library +valgrind: library +ifndef MOD + $(AT)$(foreach dir, $(BUILD_DIRS), mkdir -p build/$(dir)/test; BUILD_DIR=../build/$(dir); export BUILD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) valgrind || exit $$?;) + $(AT)$(foreach ext, $(EXTENSIONS), $(foreach dir, $(patsubst $(ext)/%.h, %, $(wildcard $(ext)/*.h)), mkdir -p build/$(dir)/test; BUILD_DIR=$(CURDIR)/build/$(dir); export BUILD_DIR; MOD_DIR=$(dir); export MOD_DIR; $(MAKE) -f $(CURDIR)/Makefile.subdirs -C $(ext)/$(dir) valgrind || exit $$?;)) +else + $(AT)$(foreach dir, $(MOD), mkdir -p build/$(dir)/test; BUILD_DIR=../build/$(dir); export BUILD_DIR; $(MAKE) -f ../Makefile.subdirs -C $(dir) valgrind || exit $$?;) +endif install: library - mkdir -p $(PREFIX)/lib - mkdir -p $(PREFIX)/include -ifdef ARB_SHARED - cp $(ARB_LIB) $(PREFIX)/lib -endif -ifdef ARB_STATIC - cp libarb.a $(PREFIX)/lib -endif - cp *.h $(PREFIX)/include + mkdir -p $(DESTDIR)$(PREFIX)/lib + mkdir -p $(DESTDIR)$(PREFIX)/include/arb + $(AT)if [ "$(ARB_SHARED)" -eq "1" ]; then \ + cp $(ARB_LIB) $(DESTDIR)$(PREFIX)/lib; \ + fi + $(AT)if [ "$(ARB_STATIC)" -eq "1" ]; then \ + cp libarb.a $(DESTDIR)$(PREFIX)/lib; \ + fi + cp $(HEADERS) $(DESTDIR)$(PREFIX)/include/arb + $(AT)if [ ! -z $(EXT_HEADERS) ]; then \ + cp $(EXT_HEADERS) $(DESTDIR)$(PREFIX)/include; \ + fi -.PHONY: profile library library-recursive recursive clean check check-recursive all +build: + mkdir -p build -build/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ +build/%.lo: %.c $(HEADERS) | build + $(QUIET_CC) $(CC) $(PIC_FLAG) $(CFLAGS) $(INCS) -c $< -o $@; -build/%.o: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ +build/%.o: %.c $(HEADERS) | build + $(QUIET_CC) $(CC) $(CFLAGS) $(INCS) -c $< -o $@; -BUILD_DIRS = fmpr arf mag arb arb_mat arb_poly arb_calc acb acb_mat acb_poly acb_calc fmprb fmprb_poly fmprb_mat fmprb_calc fmpcb fmpcb_poly fmpcb_mat fmpcb_calc elefun bernoulli hypgeom gamma zeta fmpz_extras partitions +build/test/%$(EXEEXT): test/%.c $(HEADERS) | build/test + $(QUIET_CC) $(CC) $(CFLAGS) $(INCS) $< -o $@ $(LIBS) + +build/test: + mkdir -p build/test + +build/interfaces: + mkdir -p build/interfaces + +print-%: + @echo '$*=$($*)' + +.PHONY: profile library shared static clean examples tune check tests distclean dist install all valgrind diff --git a/Makefile.subdirs b/Makefile.subdirs new file mode 100644 index 00000000..3dc757d0 --- /dev/null +++ b/Makefile.subdirs @@ -0,0 +1,89 @@ +QUIET_CC = @echo ' ' CC ' ' $@; + +AT=@ + +SOURCES = $(wildcard *.c) + +HEADERS = $(wildcard ../*.h) +TEST_HEADERS = $(wildcard *.h) + +OBJS = $(patsubst %.c, $(BUILD_DIR)/$(MOD_DIR)_%.o, $(SOURCES)) + +LOBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) +MOD_LOBJ = $(BUILD_DIR)/../$(MOD_DIR).lo + +TEST_SOURCES = $(wildcard test/*.c) +TESTXX_SOURCES = $(wildcard test/*.cpp) + +PROF_SOURCES = $(wildcard profile/*.c) + +TUNE_SOURCES = $(wildcard tune/*.c) + +TESTS = $(patsubst %.c, $(BUILD_DIR)/%$(EXEEXT), $(TEST_SOURCES)) \ + $(patsubst %.cpp, $(BUILD_DIR)/%$(EXEEXT), $(TESTXX_SOURCES)) + +TESTS_RUN = $(patsubst %, %_RUN, $(TESTS)) + +VALGRIND_RUN = $(patsubst %, %_VALGRIND_RUN, $(TESTS)) + +PROFS = $(patsubst %.c, $(BUILD_DIR)/%$(EXEEXT), $(PROF_SOURCES)) + +TUNE = $(patsubst %.c, %$(EXEEXT), $(TUNE_SOURCES)) + +all: shared static + +shared: $(MOD_LOBJ) + +static: $(OBJS) + +profile: $(PROFS) + +-include $(patsubst %, %.d, $(PROFS)) + +$(BUILD_DIR)/profile/%$(EXEEXT): profile/%.c $(BUILD_DIR)/../profiler.o + $(QUIET_CC) $(CC) $(ABI_FLAG) -O2 -std=c99 -g $(INCS) $< $(BUILD_DIR)/../profiler.o -o $@ $(LIBS) -MMD -MP -MF $@.d -MT "$@" -MT "$@.d" + +tune: $(TUNE_SOURCES) $(HEADERS) + $(AT)$(foreach prog, $(TUNE), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) || exit $$?;) + +-include $(OBJS:.o=.d) + +$(BUILD_DIR)/$(MOD_DIR)_%.o: %.c + $(QUIET_CC) $(CC) $(CFLAGS) $(INCS) -c $< -o $@ -MMD -MP -MF "$(BUILD_DIR)/$(MOD_DIR)_$*.d" -MT "$(BUILD_DIR)/$(MOD_DIR)_$*.d" -MT "$@" + +$(MOD_LOBJ): $(LOBJS) + $(QUIET_CC) $(CC) $(ABI_FLAG) -Wl,-r $^ -o $@ -nostdlib + +-include $(LOBJS:.lo=.d) + +$(BUILD_DIR)/%.lo: %.c + $(QUIET_CC) $(CC) $(PIC_FLAG) $(CFLAGS) $(INCS) -c $< -o $@ -MMD -MP -MF "$(BUILD_DIR)/$*.d" -MT "$(BUILD_DIR)/$*.d" -MT "$@" + +clean: + rm -rf $(BUILD_DIR) $(MOD_LOBJ) + +tests: $(TESTS) + +check: tests $(TESTS_RUN) + +valgrind: tests $(VALGRIND_RUN) + +-include $(patsubst %, %.d, $(TESTS)) + +ifeq ($(ARB_SHARED), 0) +$(BUILD_DIR)/test/%$(EXEEXT): $(BUILD_DIR)/../../libarb.a +endif + +$(BUILD_DIR)/test/%$(EXEEXT): test/%.c + $(QUIET_CC) $(CC) $(CFLAGS) $(INCS) $< -o $@ $(LIBS) -MMD -MP -MF $@.d -MT "$@" -MT "$@.d" + +$(BUILD_DIR)/test/%$(EXEEXT): test/%.cpp $(BUILD_DIR)/../../test_helpers.o + $(QUIET_CC) $(CXX) $(CFLAGS) $(INCS) $< -o $@ $(LIBS) -MMD -MP -MF $@.d -MT "$@" -MT "$@.d" + +%_RUN: % + @$< + +%_VALGRIND_RUN: % + valgrind --track-origins=yes --leak-check=full --show-reachable=yes --log-file="$*.valgrind" $< + +.PHONY: profile tune clean check tests all shared static valgrind %_RUN %_VALGRIND_RUN diff --git a/acb/Makefile b/acb/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/acb/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/acb_calc/Makefile b/acb_calc/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/acb_calc/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/acb_mat/Makefile b/acb_mat/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/acb_mat/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/acb_poly/Makefile b/acb_poly/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/acb_poly/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/arb/Makefile b/arb/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/arb/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/arb_calc/Makefile b/arb_calc/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/arb_calc/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/arb_mat/Makefile b/arb_mat/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/arb_mat/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/arb_poly/Makefile b/arb_poly/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/arb_poly/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/arf/Makefile b/arf/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/arf/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/bernoulli/Makefile b/bernoulli/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/bernoulli/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/config.h b/config.h new file mode 100644 index 00000000..978268a0 --- /dev/null +++ b/config.h @@ -0,0 +1,8 @@ +/* This file is autogenerated by ./configure -- do not edit! */ +#define POPCNT_INTRINSICS +#define HAVE_BLAS 0 +#define HAVE_TLS 1 +#define HAVE_PTHREAD 1 +#define HAVE_GC 0 +#define ARB_REENTRANT 0 +#define WANT_ASSERT 0 diff --git a/configure b/configure index 07847d9d..7dc57cd6 100755 --- a/configure +++ b/configure @@ -2,13 +2,34 @@ # (C) 2007, Robert Bradshaw, William Hart, William Stein, Michael Abshoff # (C) 2011, William Hart +# (C) 2012, William Hart, Jean-Pierre Flori, Thomas DuBuisson +# (C) 2012, Jan Engelhardt PREFIX="/usr/local" GMP_DIR="/usr/local" MPFR_DIR="/usr/local" FLINT_DIR="/usr/local" +NTL_DIR="/usr/local" +GC_DIR="/usr/local" +BLAS_DIR="/usr/local" +WANT_NTL=0 +WANT_BLAS=0 SHARED=1 STATIC=1 +TLS=1 +PTHREAD=1 +REENTRANT=0 +WANT_GC=0 +WANT_TLS=0 +WANT_CXX=0 +ASSERT=0 +BUILD= +EXTENSIONS= +EXT_MODS= +EXTRA_BUILD= + +FLINT_CPIMPORT_DIR="$PREFIX/share/flint" +FLINT_CPIMPORT="$FLINT_CPIMPORT_DIR/CPimport.txt" usage() { @@ -16,147 +37,611 @@ usage() echo " where may be" echo " -h display usage information" echo " where may be:" - echo " --with-gmp= Specify location of GMP" - echo " --with-mpfr= Specify location of MPFR" - echo " --with-flint= Specify location of FLINT" - echo " --prefix= Specify path to installation location" - echo " --disable-shared Do not build a shared library" - echo " --disable-static Do not build a static library" - echo " CC= Use the C compiler with the given name" - echo " AR= Use the AR library builder with the given name" - echo " CFLAGS= Pass the given flags to the compiler" + echo " --prefix= Specify path to installation location (default: /usr/local)" + echo " --with-mpir= Specify location of MPIR (default: /usr/local)" + echo " --with-gmp= Specify location of GMP (default: /usr/local)" + echo " --with-mpfr= Specify location of MPFR (default: /usr/local)" + echo " --with-flint= Specify location of FLINT (default: /usr/local)" + echo " --with-blas[=] Use BLAS and specify its location (default: /usr/local)" + echo " --without-blas Do not use BLAS (default)" + echo " --with-ntl[=] Build NTL interface and specify its location (default: /usr/local)" + echo " --without-ntl Do not build NTL interface (default)" + echo " --extensions= Specify location of extension modules" + echo " --build=arch-os Specify architecture/OS combination rather than use values from uname -m/-s" + echo " --enable-shared Build a shared library (default)" + echo " --disable-shared Do not build a shared library" + echo " --enable-static Build a static library (default)" + echo " --disable-static Do not build a static library" + echo " --single Faster [non-reentrant if tls or pthread not used] version of library (default)" + echo " --reentrant Build fully reentrant [with or without tls, with pthread] version of library" + echo " --with-gc= GC safe build with path to gc" + echo " --enable-pthread Use pthread (default)" + echo " --disable-pthread Do not use pthread" + echo " --enable-tls Use thread-local storage (default)" + echo " --disable-tls Do not use thread-local storage" + echo " --enable-assert Enable use of asserts (use for debug builds only)" + echo " --disable-assert Disable use of asserts (default)" + echo " --enable-cxx Enable C++ wrapper tests" + echo " --disable-cxx Disable C++ wrapper tests (default)" + echo " CC= Use the C compiler with the given name (default: gcc)" + echo " CXX= Use the C++ compiler with the given name (default: g++)" + echo " AR= Use the AR library builder with the given name (default: ar)" + echo " CFLAGS= Pass the given flags to the compiler" + echo " ABI=[32|64] Tell the compiler to use given ABI (default: empty)" } -until [ -z "$1" ]; do - case $1 in - "-h") usage +while [ "$1" != "" ]; do + PARAM=`echo $1 | sed 's/=.*//'` + VALUE=`echo $1 | sed 's/[^=]*//; s/=//'` + case "$PARAM" in + -h|--help) + usage exit 0 ;; - "--with-gmp="*) - GMP_DIR=`expr substr $1 12 length $1` + --with-mpir|--with-gmp) + GMP_DIR="$VALUE" ;; - "--with-mpfr="*) - MPFR_DIR=`expr substr $1 13 length $1` + --with-mpfr) + MPFR_DIR="$VALUE" ;; - "--with-flint="*) - FLINT_DIR=`expr substr $1 14 length $1` + --with-flint) + FLINT_DIR="$VALUE" ;; - "--prefix="*) - PREFIX=`expr substr $1 10 length $1` - ;; - "--disable-shared") + --with-ntl) + WANT_NTL=1 + if [ ! -z "$VALUE" ]; then + NTL_DIR="$VALUE" + fi + ;; + --without-ntl) + WANT_NTL=0 + ;; + --with-blas) + WANT_BLAS=1 + if [ ! -z "$VALUE" ]; then + BLAS_DIR="$VALUE" + fi + ;; + --without-blas) + WANT_BLAS=0 + ;; + --extensions) + EXTENSIONS="$VALUE" + ;; + --build) + BUILD="$VALUE" + ;; + --prefix) + PREFIX=$VALUE + FLINT_CPIMPORT_DIR="$PREFIX/share/arb" + FLINT_CPIMPORT="$FLINT_CPIMPORT_DIR/CPimport.txt" + ;; + --enable-shared) + SHARED=1 + ;; + --disable-shared) SHARED=0 ;; - "--disable-static") + --enable-static) + STATIC=1 + ;; + --disable-static) STATIC=0 ;; - "AR="*) - AR=`expr substr $1 4 length $1` + --single) + REENTRANT=0 ;; - "CC="*) - CC=`expr substr $1 4 length $1` + --reentrant) + REENTRANT=1 ;; - "CFLAGS="*) - CFLAGS=`expr substr $1 8 length $1` + --with-gc) + WANT_GC=1 + if [ ! -z "$VALUE" ]; then + GC_DIR="$VALUE" + fi ;; - *) usage + --enable-pthread) + PTHREAD=1 + ;; + --disable-pthread) + PTHREAD=0 + ;; + --enable-tls) + TLS=1 + WANT_TLS=1;; + --disable-tls) + TLS=0 + ;; + --enable-assert) + ASSERT=1 + ;; + --disable-assert) + ASSERT=0 + ;; + --enable-cxx) + WANT_CXX=1 + ;; + --disable-cxx) + WANT_CXX=0 + ;; + AR) + AR="$VALUE" + ;; + CC) + CC="$VALUE" + ;; + CXX) + CXX="$VALUE" + ;; + CFLAGS) + CFLAGS="$VALUE" + ;; + ABI) + ABI="$VALUE" + ;; + *) + usage exit 1 - ;; + ;; esac shift done +#find dependencies + +LIBS="m" + if [ -d "${GMP_DIR}/lib" ]; then GMP_LIB_DIR="${GMP_DIR}/lib" - GMP_INCLUDE_DIR="${GMP_DIR}/include" + GMP_INC_DIR="${GMP_DIR}/include" +elif [ -d "${GMP_DIR}/lib64" ]; then + GMP_LIB_DIR="${GMP_DIR}/lib64" + GMP_INC_DIR="${GMP_DIR}/include" elif [ -d "${GMP_DIR}/.libs" ]; then GMP_LIB_DIR="${GMP_DIR}/.libs" - GMP_INCLUDE_DIR="${GMP_DIR}" + GMP_INC_DIR="${GMP_DIR}" else - echo "Invalid GMP/MPIR directory" + echo "Invalid GMP directory" exit 1 fi +LIB_DIRS="${LIB_DIRS} ${GMP_LIB_DIR}" +INC_DIRS="${INC_DIRS} ${GMP_INC_DIR}" +LIBS="${LIBS} gmp" if [ -d "${MPFR_DIR}/lib" ]; then MPFR_LIB_DIR="${MPFR_DIR}/lib" - MPFR_INCLUDE_DIR="${MPFR_DIR}/include" + MPFR_INC_DIR="${MPFR_DIR}/include" +elif [ -d "${MPFR_DIR}/lib64" ]; then + MPFR_LIB_DIR="${MPFR_DIR}/lib64" + MPFR_INC_DIR="${MPFR_DIR}/include" elif [ -d "${MPFR_DIR}/.libs" ]; then MPFR_LIB_DIR="${MPFR_DIR}/.libs" - MPFR_INCLUDE_DIR="${MPFR_DIR}" + MPFR_INC_DIR="${MPFR_DIR}" +elif [ -d "${MPFR_DIR}/src/.libs" ]; then + MPFR_LIB_DIR="${MPFR_DIR}/src/.libs" + MPFR_INC_DIR="${MPFR_DIR}/src" else echo "Invalid MPFR directory" exit 1 fi +LIB_DIRS="${LIB_DIRS} ${MPFR_LIB_DIR}" +INC_DIRS="${INC_DIRS} ${MPFR_INC_DIR}" +LIBS="${LIBS} mpfr" if [ -d "${FLINT_DIR}/lib" ]; then FLINT_LIB_DIR="${FLINT_DIR}/lib" - FLINT_INCLUDE_DIR="${FLINT_DIR}/include" + FLINT_INC_DIR="${FLINT_DIR}/include" +elif [ -d "${FLINT_DIR}/lib64" ]; then + FLINT_LIB_DIR="${FLINT_DIR}/lib64" + FLINT_INC_DIR="${FLINT_DIR}/include" elif [ -d "${FLINT_DIR}/.libs" ]; then FLINT_LIB_DIR="${FLINT_DIR}/.libs" - FLINT_INCLUDE_DIR="${FLINT_DIR}" -elif [ -e "${FLINT_DIR}/flint.h" ]; then + FLINT_INC_DIR="${FLINT_DIR}" +elif [ -d "${FLINT_DIR}" ]; then FLINT_LIB_DIR="${FLINT_DIR}" - FLINT_INCLUDE_DIR="${FLINT_DIR}" + FLINT_INC_DIR="${FLINT_DIR}" else - echo "${FLINT_DIR}" - echo "Invalid FLINT directory?" + echo "Invalid FLINT directory" exit 1 fi +LIB_DIRS="${LIB_DIRS} ${FLINT_LIB_DIR}" +INC_DIRS="${INC_DIRS} ${FLINT_INC_DIR}" +LIBS="${LIBS} flint" -if [ -d "${FLINT_INCLUDE_DIR}/flint" ]; then - FLINT_INCLUDE_DIR="${FLINT_INCLUDE_DIR}/flint" +#configure extra libraries + +if [ "$WANT_NTL" = "1" ]; then + if [ -d "${NTL_DIR}/lib" ]; then + NTL_LIB_DIR="${NTL_DIR}/lib" + NTL_INC_DIR="${NTL_DIR}/include" + elif [ -d "${NTL_DIR}/lib64" ]; then + NTL_LIB_DIR="${NTL_DIR}/lib64" + NTL_INC_DIR="${NTL_DIR}/include" + else + echo "Invalid NTL directory" + exit 1 + fi + EXTRA_INC_DIRS="${EXTRA_INC_DIRS} ${NTL_INC_DIR}" + EXTRA_LIB_DIRS="${EXTRA_LIB_DIRS} ${NTL_LIB_DIR}" + EXTRA_LIBS="${EXTRA_LIBS} ntl" fi -if [ "`uname`" = "Linux" -a "`uname -m`" = "x86_64" ]; then - ARB_TUNE="-funroll-loops " -elif [ "`uname`" = "Darwin" -a "`uname -m`" = "Power Macintosh" ]; then - ARB_TUNE=" -funroll-loops " -elif [ "`uname -p`" = "powerpc" ]; then - ARB_TUNE="-m64 -mcpu=970 -mtune=970 -mpowerpc64 -falign-loops=16 -falign-functions=16 -falign-labels=16 -falign-jumps=16" -elif [ "`uname -m`" = "ia64" ]; then - # -funroll-loops crashes the build on itanium under GCC-4.2.1, as reported by - # Kate Minola. - ARB_TUNE=" " -else - ARB_TUNE="-funroll-loops " +if [ "$WANT_BLAS" = "1" ]; then + if [ -d "${BLAS_DIR}" ]; then + BLAS_LIB_DIR="${BLAS_DIR}" + BLAS_INC_DIR="${BLAS_DIR}" + else + echo "Invalid BLAS directory" + exit 1 + fi + EXTRA_INC_DIRS="${EXTRA_INC_DIRS} ${BLAS_INC_DIR}" + EXTRA_LIB_DIRS="${EXTRA_LIB_DIRS} ${BLAS_LIB_DIR}" + EXTRA_LIBS="${EXTRA_LIBS} openblas" fi +CONFIG_BLAS="#define HAVE_BLAS ${WANT_BLAS}" -if [ "`uname`" = "Darwin" ]; then - ARB_LIB="libarb.dylib" -else - ARB_LIB="libarb.so" +if [ "$WANT_GC" = "1" ]; then + if [ -d "${GC_DIR}" ]; then + GC_LIB_DIR="${GC_DIR}/lib" + GC_INC_DIR="${GC_DIR}/include" + else + echo "Invalid GC directory" + exit 1 + fi + EXTRA_INC_DIRS="${EXTRA_INC_DIRS} ${GC_INC_DIR}" + EXTRA_LIB_DIRS="${EXTRA_LIB_DIRS} ${GC_LIB_DIR}" + EXTRA_LIBS="${EXTRA_LIBS} gc" fi +CONFIG_GC="#define HAVE_GC ${WANT_GC}" -if [ -z "$CFLAGS" ]; then - CFLAGS="-O2 -g -ansi -pedantic -Wall" -fi +# defaults for CC, CXX and AR if [ -z "$CC" ]; then CC=gcc fi -CFLAGS="$CFLAGS $ARB_TUNE" +if [ -z "$CXX" ]; then + CXX=g++ +fi + +if [ -z "$AR" ]; then + AR=ar +fi + +# Architecture handler + +KERNEL=`uname` + +if [ -z "$BUILD" ]; then + ARCH=`uname -m` + + if [ "$(uname | cut -d_ -f1)" = "MINGW32" ]; then + if [ "$ABI" = "64" ]; then + OS="MINGW64" + else + OS="MINGW32" + fi + elif [ "$(uname | cut -d_ -f1)" = "CYGWIN" ]; then + if [ "$ARCH" = "x86_64" ]; then + if [ "$ABI" = "32" ]; then + OS="CYGWIN32" + else + OS="CYGWIN64" + ABI="64" + fi + else + OS="CYGWIN32" + fi + else + OS=`uname -s` + fi +else + ARCH=`echo "$BUILD" | cut -d- -f1` + OS=`echo "$BUILD" | cut -d- -f2` +fi + +case "$ARCH" in + x86_64 | amd64) + MACHINE="x86_64";; + x86 | i*86 | pc) + MACHINE="x86";; + ia64) + MACHINE="ia64";; + sparc | sun4*) + MACHINE="sparc";; + sparc64) + MACHINE="sparc64";; + ppc64 | powerpc64) + MACHINE="ppc64";; + ppc | powerpc | [P|p]ower*) + MACHINE="ppc";; + *) + MACHINE="unknown";; +esac + +#ABI flag +if [ "$ABI" = "32" ]; then + ABI_FLAG="-m32" + case "$MACHINE" in + x86_64) + MACHINE="x86";; + sparc64) + MACHINE="sparc";; + ppc64) + MACHINE="ppc";; + *) + ;; + esac +elif [ "$ABI" = "64" ]; then + ABI_FLAG="-m64" + if [ "$MACHINE" = "sparc" ]; then + MACHINE="sparc64" + fi + if [ "$MACHINE" = "x86" ]; then + MACHINE="x86_64" + fi +fi + +if [ "$MACHINE" = "sparc" ] || [ "$MACHINE" = "sparc64" ]; then + if [ "$CC" = "gcc" ]; then + CC="gcc -mno-relax" + fi +fi + +echo "Configuring...${MACHINE}-${OS}" + +#name for ARB shared library + +if [ -z "$ARB_LIB" ]; then + case "$OS" in + Darwin) + ARB_LIB="libarb.dylib" + EXTRA_SHARED_FLAGS="-install_name $PREFIX/lib/$ARB_LIB";; + CYGWIN* | MINGW*) + ARB_LIB="libarb.dll";; + *) + ARB_LIB="libarb.so";; + esac +fi + +#extension for executables + +if [ -z "$EXEEXT" ]; then + case "$OS" in + CYGWIN* | MINGW*) + EXEEXT=".exe";; + *) + EXEEXT="";; + esac +fi + +#don't build both shared and static lib on MinGW and Cygwin + +case "$OS" in + CYGWIN* | MINGW*) + if [ "$STATIC" = "1" ] && [ "$SHARED" = "1" ]; then + echo "Building both static and shared versions of MPIR/GMP on $OS is currently" + echo "unsupported, and so is it for MPFR, FLINT and ARB." + echo "You should pass --disable-shared or --disable-static to configure" + echo "depending on the versions of MPIR/GMP, MPFR and FLINT you built." + exit 1 + fi + ;; + *) + ;; +esac + +#test for popcnt flag and set needed CFLAGS + +mkdir -p build +rm -f build/test-popcnt > /dev/null 2>&1 +MSG="Testing __builtin_popcountl..." +printf "%s" "$MSG" +echo "int main(int argc, char ** argv) { +#if defined(_WIN64) +return __builtin_popcountll(argc) == 100; +#else +return __builtin_popcountl(argc) == 100; +#endif +}" > build/test-popcnt.c +$CC build/test-popcnt.c -o ./build/test-popcnt > /dev/null 2>&1 +if [ $? -eq 0 ]; then + printf "%s\n" "yes" + CONFIG_POPCNT_INTRINSICS="#define POPCNT_INTRINSICS" + + if [ "$MACHINE" = "x86_64" ]; then + MSG="Testing native popcount..." + printf "%s" "$MSG" + touch build/test-popcnt.c + rm build/test-popcnt + $CC -mpopcnt build/test-popcnt.c -o ./build/test-popcnt > /dev/null 2>&1 + build/test-popcnt > /dev/null 2>&1 + if [ $? -eq 0 ]; then + printf "%s\n" "yes" + POPCNT_FLAG="-mpopcnt" + else + printf "%s\n" "no" + fi + rm -f build/test-popcnt{,.c} + #in case -mpopcnt is not available, the test program will use an illegal + #instruction and that will print out something on stderr when the if + #construction is exited, whence the following "2> /dev/null" + fi 2> /dev/null +else + rm -f build/test-popcnt.c + printf "%s\n" "no" +fi + +#defaults for CFLAGS + +if [ -z "$CFLAGS" ]; then + if [ "$OS" = "MINGW64" ]; then + CFLAGS="-O2 -funroll-loops -g $POPCNT_FLAG $ABI_FLAG" + elif [ "$OS" = "CYGWIN64" ]; then + CFLAGS="-O2 -funroll-loops -g -D _WIN64 $POPCNT_FLAG $ABI_FLAG" + else + CFLAGS="-ansi -pedantic -Wall -O2 -funroll-loops -g $POPCNT_FLAG $ABI_FLAG" + fi +fi + +#Conway polynomials database + +CFLAGS="$CFLAGS -DFLINT_CPIMPORT=\\\"$FLINT_CPIMPORT\\\"" + +#this is needed on PPC G5 and does not hurt on other OS Xes + +if [ "$KERNEL" = Darwin ]; then + CFLAGS="-fno-common $CFLAGS" +fi + +#PIC flag + +if [ -z "$PIC_FLAG" ]; then + case "$OS" in + CYGWIN* | MINGW*) + ;; + *) + PIC_FLAG="-fPIC";; + esac +fi + +#test support for thread-local storage + +CONFIG_TLS="#define HAVE_TLS 0" + +if [ "$TLS" = "1" ]; then + mkdir -p build + rm -f build/test-tls > /dev/null 2>&1 + MSG="Testing __thread..." + printf "%s" "$MSG" + echo "__thread int x = 42; int main(int argc, char ** argv) { return x != 42; }" > build/test-tls.c + $CC build/test-tls.c -o ./build/test-tls > /dev/null 2>&1 + if [ $? -eq 0 ]; then + build/test-tls > /dev/null 2>&1 + if [ $? -eq 0 ]; then + printf "%s\n" "yes" + CONFIG_TLS="#define HAVE_TLS 1" + else + printf "%s\n" "no" + fi + rm -f build/test-tls{,.c} + else + rm -f build/test-tls.c + printf "%s\n" "no" + #build-tls can segfault on systems where tls is not available + fi 2> /dev/null +fi + +#pthread configuration + +CONFIG_PTHREAD="#define HAVE_PTHREAD ${PTHREAD}" + + +#pocess external modules + +EXTRA_INC_DIRS="${EXTRA_INC_DIRS} ${EXTENSIONS}" + +#include paths + +INCS="-I\$(CURDIR)" +for INC_DIR in ${INC_DIRS} ${EXTRA_INC_DIRS}; do + INCS="${INCS} -I${INC_DIR}" +done + +#library paths + +LLIBS="-L\$(CURDIR)" +for LIB_DIR in ${LIB_DIRS} ${EXTRA_LIB_DIRS}; do + LLIBS="${LLIBS} -L${LIB_DIR}" +done + +#linker params + +if [ "$PTHREAD" = "1" ]; then + lLIBS2="-lpthread ${lLIBS2}" +fi + + +for LIB in ${EXTRA_LIBS} ${LIBS}; do + lLIBS2="-l${LIB} ${lLIBS2}" +done +lLIBS="-larb $lLIBS2" +LIBS2="$LLIBS $lLIBS2" +LIBS="$LLIBS $lLIBS" + +#paths for dynamic linker + +case "$OS" in + CYGWIN* | MINGW*) + DLPATH="PATH";; + Darwin) + DLPATH="DYLD_LIBRARY_PATH";; + sparc) + DLPATH="LD_LIBRARY_PATH32";; + sparc64) + DLPATH="LD_LIBRARY_PATH64";; + *) + DLPATH="LD_LIBRARY_PATH";; +esac + +DLPATH_ADD="\$(CURDIR)" +for LIB_DIR in ${LIB_DIRS} ${EXTRA_LIB_DIRS}; do + DLPATH_ADD="${DLPATH_ADD}:${LIB_DIR}" +done + +#cxx + +if [ "$WANT_CXX" = "1" ]; then + EXTRA_BUILD="$EXTRA_BUILD arbxx" +fi + +#write out config.h + +echo "/* This file is autogenerated by ./configure -- do not edit! */" > config.h +echo "$CONFIG_POPCNT_INTRINSICS" >> config.h +echo "$CONFIG_BLAS" >> config.h +echo "$CONFIG_TLS" >> config.h +echo "$CONFIG_PTHREAD" >> config.h +echo "$CONFIG_GC" >> config.h +echo "#define ARB_REENTRANT $REENTRANT" >> config.h +echo "#define WANT_ASSERT $ASSERT" >> config.h + +#write out Makefile echo "# This file is autogenerated by ./configure -- do not edit!" > Makefile echo "" >> Makefile -if [ "$STATIC" = "1" ]; then - echo "ARB_STATIC=1" >> Makefile -fi -if [ "$SHARED" = "1" ]; then - echo "ARB_SHARED=1" >> Makefile -fi -echo "ARB_GMP_LIB_DIR=$GMP_LIB_DIR" >> Makefile -echo "ARB_GMP_INCLUDE_DIR=$GMP_INCLUDE_DIR" >> Makefile -echo "ARB_MPFR_LIB_DIR=$MPFR_LIB_DIR" >> Makefile -echo "ARB_MPFR_INCLUDE_DIR=$MPFR_INCLUDE_DIR" >> Makefile -echo "ARB_FLINT_LIB_DIR=$FLINT_LIB_DIR" >> Makefile -echo "ARB_FLINT_INCLUDE_DIR=$FLINT_INCLUDE_DIR" >> Makefile +echo "SHELL=/bin/sh" >> Makefile echo "" >> Makefile +echo "ARB_STATIC=$STATIC" >> Makefile +echo "ARB_SHARED=$SHARED" >> Makefile echo "ARB_LIB=$ARB_LIB" >> Makefile -echo "CC=$CC" >> Makefile -echo "CFLAGS=$CFLAGS" >> Makefile +echo "EXEEXT=$EXEEXT" >> Makefile echo "PREFIX=$PREFIX" >> Makefile echo "" >> Makefile +echo "WANT_NTL=$WANT_NTL" >> Makefile +echo "" >> Makefile +echo "FLINT_CPIMPORT_DIR=$FLINT_CPIMPORT_DIR" >> Makefile +echo "FLINT_CPIMPORT=$FLINT_CPIMPORT" >> Makefile +echo "" >> Makefile +echo "INCS=$INCS" >> Makefile +echo "LIBS=$LIBS" >> Makefile +echo "LIBS2=$LIBS2" >> Makefile +echo "" >> Makefile +echo "CC=$CC" >> Makefile +echo "CXX=$CXX" >> Makefile +echo "AR=$AR" >> Makefile +echo "" >> Makefile +echo "CFLAGS=$CFLAGS" >> Makefile +echo "ABI_FLAG=$ABI_FLAG" >> Makefile +echo "PIC_FLAG=$PIC_FLAG" >> Makefile +echo "EXTRA_SHARED_FLAGS=$EXTRA_SHARED_FLAGS" >> Makefile +echo "" >> Makefile +echo "DLPATH=$DLPATH" >> Makefile +echo "DLPATH_ADD=$DLPATH_ADD" >> Makefile +echo "EXTENSIONS=$EXTENSIONS" >> Makefile +echo "EXTRA_BUILD_DIRS=$EXTRA_BUILD" >> Makefile +echo "" >> Makefile cat Makefile.in >> Makefile +echo "ARB was successfully configured." diff --git a/elefun/Makefile b/elefun/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/elefun/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmpcb/Makefile b/fmpcb/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmpcb/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmpcb_calc/Makefile b/fmpcb_calc/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmpcb_calc/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmpcb_mat/Makefile b/fmpcb_mat/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmpcb_mat/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmpcb_poly/Makefile b/fmpcb_poly/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmpcb_poly/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmpr/Makefile b/fmpr/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmpr/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmprb/Makefile b/fmprb/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmprb/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmprb_calc/Makefile b/fmprb_calc/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmprb_calc/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmprb_mat/Makefile b/fmprb_mat/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmprb_mat/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmprb_poly/Makefile b/fmprb_poly/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmprb_poly/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/fmpz_extras/Makefile b/fmpz_extras/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/fmpz_extras/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/gamma/Makefile b/gamma/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/gamma/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/hypgeom/Makefile b/hypgeom/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/hypgeom/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/mag/Makefile b/mag/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/mag/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/partitions/Makefile b/partitions/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/partitions/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all - diff --git a/zeta/Makefile b/zeta/Makefile deleted file mode 100644 index c7e54132..00000000 --- a/zeta/Makefile +++ /dev/null @@ -1,43 +0,0 @@ -SOURCES = $(wildcard *.c) - -OBJS = $(patsubst %.c, $(BUILD_DIR)/%.o, $(SOURCES)) - -LIB_OBJS = $(patsubst %.c, $(BUILD_DIR)/%.lo, $(SOURCES)) - -TEST_SOURCES = $(wildcard test/*.c) - -PROF_SOURCES = $(wildcard profile/*.c) - -TUNE_SOURCES = $(wildcard tune/*.c) - -TESTS = $(patsubst %.c, %, $(TEST_SOURCES)) - -PROFS = $(patsubst %.c, %, $(PROF_SOURCES)) - -TUNE = $(patsubst %.c, %, $(TUNE_SOURCES)) - -all: $(OBJS) - -library: $(LIB_OBJS) - -profile: - $(foreach prog, $(PROFS), $(CC) -O2 -std=c99 $(INCS) $(prog).c ../profiler.o -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -tune: $(TUNE_SOURCES) - $(foreach prog, $(TUNE), $(CC) -O2 -std=c99 $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - -$(BUILD_DIR)/%.o: %.c - $(CC) $(CFLAGS) -c $(INCS) $< -o $@ - -$(BUILD_DIR)/%.lo: %.c - $(CC) -fPIC $(CFLAGS) $(INCS) -c $< -o $@ - -clean: - rm -rf $(BUILD_DIR) - -check: library - $(foreach prog, $(TESTS), $(CC) $(CFLAGS) $(INCS) $(prog).c -o $(BUILD_DIR)/$(prog) $(LIBS) -lflint;) - $(foreach prog, $(TESTS), $(BUILD_DIR)/$(prog);) - -.PHONY: profile clean check all -