From d13968bbb8b88e47cb2dd7170991848f6a8d7826 Mon Sep 17 00:00:00 2001 From: milancurcic Date: Sat, 7 May 2022 14:49:42 -0400 Subject: [PATCH 1/4] Remove Makefiles --- Makefile.manual | 33 --- src/Makefile.manual | 245 ------------------ src/tests/Makefile.manual | 39 --- src/tests/Makefile.manual.test.mk | 27 -- src/tests/array/Makefile.manual | 4 - src/tests/ascii/Makefile.manual | 4 - src/tests/bitsets/Makefile.manual | 3 - src/tests/hash_functions/Makefile.manual | 47 ---- src/tests/hash_functions_perf/Makefile.manual | 3 - src/tests/io/Makefile.manual | 20 -- src/tests/linalg/Makefile.manual | 14 - src/tests/logger/Makefile.manual | 4 - src/tests/math/Makefile.manual | 11 - src/tests/optval/Makefile.manual | 11 - src/tests/quadrature/Makefile.manual | 12 - src/tests/selection/Makefile.manual | 10 - src/tests/sorting/Makefile.manual | 3 - src/tests/stats/Makefile.manual | 16 -- src/tests/string/Makefile.manual | 11 - src/tests/stringlist/Makefile.manual | 5 - 20 files changed, 522 deletions(-) delete mode 100644 Makefile.manual delete mode 100644 src/Makefile.manual delete mode 100644 src/tests/Makefile.manual delete mode 100644 src/tests/Makefile.manual.test.mk delete mode 100644 src/tests/array/Makefile.manual delete mode 100644 src/tests/ascii/Makefile.manual delete mode 100644 src/tests/bitsets/Makefile.manual delete mode 100644 src/tests/hash_functions/Makefile.manual delete mode 100755 src/tests/hash_functions_perf/Makefile.manual delete mode 100644 src/tests/io/Makefile.manual delete mode 100644 src/tests/linalg/Makefile.manual delete mode 100644 src/tests/logger/Makefile.manual delete mode 100644 src/tests/math/Makefile.manual delete mode 100644 src/tests/optval/Makefile.manual delete mode 100644 src/tests/quadrature/Makefile.manual delete mode 100644 src/tests/selection/Makefile.manual delete mode 100644 src/tests/sorting/Makefile.manual delete mode 100644 src/tests/stats/Makefile.manual delete mode 100644 src/tests/string/Makefile.manual delete mode 100644 src/tests/stringlist/Makefile.manual diff --git a/Makefile.manual b/Makefile.manual deleted file mode 100644 index 288c18f01..000000000 --- a/Makefile.manual +++ /dev/null @@ -1,33 +0,0 @@ -# Fortran stdlib Makefile - -FC ?= gfortran -# -fno-range-check needed for hash functions for gfortran-9 -FFLAGS ?= -Wall -Wextra -Wimplicit-interface -fPIC -g -fcheck=all -fno-range-check -ADD_FYPPFLAGS ?= - -VERSION := $(subst ., ,$(file < VERSION)) -VERSION_FYPPFLAGS += \ - -DPROJECT_VERSION_MAJOR=$(word 1,$(VERSION)) \ - -DPROJECT_VERSION_MINOR=$(word 2,$(VERSION)) \ - -DPROJECT_VERSION_PATCH=$(word 3,$(VERSION)) - -FYPPFLAGS := $(ADD_FYPPFLAGS) $(VERSION_FYPPFLAGS) - -export FC -export FFLAGS -export FYPPFLAGS - -.PHONY: all clean test - -all: - $(MAKE) -f Makefile.manual --directory=src - $(MAKE) -f Makefile.manual --directory=src/tests - -test: - $(MAKE) -f Makefile.manual --directory=src/tests test - @echo - @echo "All tests passed." - -clean: - $(MAKE) -f Makefile.manual clean --directory=src - $(MAKE) -f Makefile.manual clean --directory=src/tests diff --git a/src/Makefile.manual b/src/Makefile.manual deleted file mode 100644 index 25132a375..000000000 --- a/src/Makefile.manual +++ /dev/null @@ -1,245 +0,0 @@ -SRCFYPP = \ - stdlib_hash_32bit_fnv.fypp \ - stdlib_hash_32bit_nm.fypp \ - stdlib_hash_32bit_water.fypp \ - stdlib_hash_64bit_fnv.fypp \ - stdlib_hash_64bit_pengy.fypp \ - stdlib_hash_64bit_spookyv2.fypp \ - stdlib_ascii.fypp \ - stdlib_bitsets_64.fypp \ - stdlib_bitsets_large.fypp \ - stdlib_bitsets.fypp \ - stdlib_hash_32bit.fypp \ - stdlib_hash_64bit.fypp \ - stdlib_io.fypp \ - stdlib_io_npy.fypp \ - stdlib_io_npy_load.fypp \ - stdlib_io_npy_save.fypp \ - stdlib_kinds.fypp \ - stdlib_linalg.fypp \ - stdlib_linalg_diag.fypp \ - stdlib_linalg_outer_product.fypp \ - stdlib_math_arange.fypp \ - stdlib_optval.fypp \ - stdlib_quadrature.fypp \ - stdlib_quadrature_trapz.fypp \ - stdlib_quadrature_simps.fypp \ - stdlib_selection.fypp \ - stdlib_random.fypp \ - stdlib_sorting.fypp \ - stdlib_sorting_ord_sort.fypp \ - stdlib_sorting_sort.fypp \ - stdlib_sorting_sort_index.fypp \ - stdlib_stats.fypp \ - stdlib_stats_corr.fypp \ - stdlib_stats_cov.fypp \ - stdlib_stats_mean.fypp \ - stdlib_stats_median.fypp \ - stdlib_stats_moment.fypp \ - stdlib_stats_moment_all.fypp \ - stdlib_stats_moment_mask.fypp \ - stdlib_stats_moment_scalar.fypp \ - stdlib_stats_distribution_uniform.fypp \ - stdlib_stats_distribution_normal.fypp \ - stdlib_stats_distribution_exponential.fypp \ - stdlib_stats_var.fypp \ - stdlib_math.fypp \ - stdlib_math_linspace.fypp \ - stdlib_math_logspace.fypp \ - stdlib_math_is_close.fypp \ - stdlib_math_all_close.fypp \ - stdlib_math_diff.fypp \ - stdlib_string_type.fypp \ - stdlib_string_type_constructor.fypp \ - stdlib_strings.fypp \ - stdlib_strings_to_string.fypp \ - stdlib_version.fypp - -SRC = f18estop.f90 \ - stdlib_array.f90 \ - stdlib_error.f90 \ - stdlib_specialfunctions.f90 \ - stdlib_specialfunctions_legendre.f90 \ - stdlib_io.f90 \ - stdlib_logger.f90 \ - stdlib_quadrature_gauss.f90 \ - stdlib_strings.f90 \ - stdlib_stringlist_type.f90 \ - $(SRCGEN) - -LIB = libstdlib.a - - -SRCGEN = $(SRCFYPP:.fypp=.f90) -OBJS = $(SRC:.f90=.o) -MODS = $(OBJS:.o=.mod) -SMODS = $(OBJS:.o=*.smod) - -.PHONY: all clean - -all: $(LIB) - -$(LIB): $(OBJS) - ar rcs $@ $(OBJS) - -clean: - $(RM) $(LIB) $(OBJS) $(MODS) $(SMODS) $(SRCGEN) - -%.o: %.f90 - $(FC) $(FFLAGS) -c $< - -$(SRCGEN): %.f90: %.fypp common.fypp - fypp $(FYPPFLAGS) $< $@ - -# Fortran module dependencies -f18estop.o: stdlib_error.o -stdlib_hash_32bit_fnv.o: \ - stdlib_hash_32bit.o -stdlib_hash_32bit.o: \ - stdlib_kinds.o -stdlib_hash_32bit_nm.o: \ - stdlib_hash_32bit.o -stdlib_hash_32bit_water.o: \ - stdlib_hash_32bit.o -stdlib_hash_64bit_fnv.o: \ - stdlib_hash_64bit.o -stdlib_hash_64bit.o: \ - stdlib_kinds.o -stdlib_hash_64bit_pengy.o: \ - stdlib_hash_64bit.o -stdlib_hash_64bit_spookyv2.o: \ - stdlib_hash_64bit.o -stdlib_ascii.o: stdlib_kinds.o -stdlib_bitsets.o: stdlib_kinds.o \ - stdlib_optval.o -stdlib_bitsets_64.o: stdlib_bitsets.o -stdlib_bitsets_large.o: stdlib_bitsets.o -stdlib_error.o: stdlib_optval.o -stdlib_specialfunctions.o: stdlib_kinds.o -stdlib_specialfunctions_legendre.o: stdlib_kinds.o stdlib_specialfunctions.o -stdlib_io.o: \ - stdlib_ascii.o \ - stdlib_error.o \ - stdlib_optval.o \ - stdlib_kinds.o \ - stdlib_string_type.o \ - stdlib_ascii.o -stdlib_io_npy.o: \ - stdlib_kinds.o -stdlib_io_npy_load.o: \ - stdlib_io_npy.o \ - stdlib_error.o \ - stdlib_strings.o -stdlib_io_npy_save.o: \ - stdlib_io_npy.o \ - stdlib_error.o \ - stdlib_strings.o -stdlib_linalg.o: \ - stdlib_kinds.o \ - stdlib_optval.o \ - stdlib_error.o -stdlib_linalg_diag.o: \ - stdlib_linalg.o \ - stdlib_kinds.o -stdlib_linalg_outer_product.o: \ - stdlib_linalg.o -stdlib_logger.o: stdlib_ascii.o stdlib_optval.o -stdlib_optval.o: stdlib_kinds.o -stdlib_quadrature.o: stdlib_kinds.o -stdlib_quadrature_gauss.o: stdlib_kinds.o stdlib_quadrature.o -stdlib_quadrature_simps.o: \ - stdlib_quadrature.o \ - stdlib_error.o \ - stdlib_kinds.o -stdlib_quadrature_trapz.o: \ - stdlib_quadrature.o \ - stdlib_error.o \ - stdlib_kinds.o -stdlib_selection.o: \ - stdlib_kinds.o -stdlib_sorting.o: \ - stdlib_kinds.o \ - stdlib_string_type.o -stdlib_sorting_ord_sort.o: \ - stdlib_sorting.o -stdlib_sorting_sort.o: \ - stdlib_sorting.o -stdlib_sorting_sort_index.o: \ - stdlib_sorting.o -stdlib_stats.o: \ - stdlib_kinds.o -stdlib_stats_corr.o: \ - stdlib_optval.o \ - stdlib_kinds.o \ - stdlib_stats.o -stdlib_stats_cov.o: \ - stdlib_optval.o \ - stdlib_kinds.o \ - stdlib_stats.o -stdlib_stats_mean.o: \ - stdlib_optval.o \ - stdlib_kinds.o \ - stdlib_stats.o -stdlib_stats_median.o: \ - stdlib_optval.o \ - stdlib_kinds.o \ - stdlib_selection.o \ - stdlib_stats.o -stdlib_stats_moment.o: \ - stdlib_optval.o \ - stdlib_kinds.o \ - stdlib_stats.o -stdlib_stats_moment_all.o: \ - stdlib_stats_moment.o -stdlib_stats_moment_mask.o: \ - stdlib_stats_moment.o -stdlib_stats_moment_scalar.o: \ - stdlib_stats_moment.o -stdlib_stats_var.o: \ - stdlib_optval.o \ - stdlib_kinds.o \ - stdlib_stats.o -stdlib_stats_distribution_uniform.o: \ - stdlib_kinds.o \ - stdlib_error.o \ - stdlib_random.o -stdlib_stats_distribution_normal.o: \ - stdlib_kinds.o \ - stdlib_error.o \ - stdlib_random.o \ - stdlib_stats_distribution_uniform.o -stdlib_stats_distribution_exponential.o: \ - stdlib_kinds.o \ - stdlib_error.o \ - stdlib_random.o \ - stdlib_stats_distribution_uniform.o -stdlib_random.o: \ - stdlib_kinds.o \ - stdlib_error.o -stdlib_string_type.o: stdlib_ascii.o \ - stdlib_kinds.o -stdlib_string_type_constructor.o: stdlib_string_type.o \ - stdlib_strings_to_string.o \ - stdlib_strings.o -stdlib_strings.o: stdlib_ascii.o \ - stdlib_string_type.o \ - stdlib_optval.o \ - stdlib_kinds.o -stdlib_strings_to_string.o: stdlib_strings.o -stdlib_math.o: stdlib_kinds.o \ - stdlib_optval.o -stdlib_math_linspace.o: \ - stdlib_math.o -stdlib_math_logspace.o: \ - stdlib_math_linspace.o -stdlib_math_arange.o: \ - stdlib_math.o -stdlib_math_is_close.o: \ - stdlib_math.o -stdlib_math_all_close.o: \ - stdlib_math.o \ - stdlib_math_is_close.o -stdlib_math_diff.o: stdlib_math.o -stdlib_stringlist_type.o: stdlib_string_type.o \ - stdlib_math.o \ - stdlib_optval.o diff --git a/src/tests/Makefile.manual b/src/tests/Makefile.manual deleted file mode 100644 index 370f2e3c8..000000000 --- a/src/tests/Makefile.manual +++ /dev/null @@ -1,39 +0,0 @@ -.PHONY: all clean test - -LIB = libstdlib-testing.a -SRC = testdrive.F90 -OBJS = $(SRC:.F90=.o) -MODS = $(OBJS:.o=.mod) -FETCH = curl -L - -all test:: $(LIB) - -testdrive.F90: - $(FETCH) https://github.com/fortran-lang/test-drive/raw/v0.4.0/src/testdrive.F90 > $@ - -all test clean:: - $(MAKE) -f Makefile.manual --directory=array $@ - $(MAKE) -f Makefile.manual --directory=ascii $@ - $(MAKE) -f Makefile.manual --directory=bitsets $@ - $(MAKE) -f Makefile.manual --directory=hash_functions_perf $@ - $(MAKE) -f Makefile.manual --directory=hash_functions $@ - $(MAKE) -f Makefile.manual --directory=io $@ - $(MAKE) -f Makefile.manual --directory=logger $@ - $(MAKE) -f Makefile.manual --directory=optval $@ - $(MAKE) -f Makefile.manual --directory=selection $@ - $(MAKE) -f Makefile.manual --directory=sorting $@ - $(MAKE) -f Makefile.manual --directory=quadrature $@ - $(MAKE) -f Makefile.manual --directory=stats $@ - $(MAKE) -f Makefile.manual --directory=string $@ - $(MAKE) -f Makefile.manual --directory=math $@ - $(MAKE) -f Makefile.manual --directory=stringlist $@ - $(MAKE) -f Makefile.manual --directory=linalg $@ - -$(LIB): $(OBJS) - ar rcs $@ $^ - -clean:: - $(RM) $(LIB) $(OBJS) $(MODS) $(SRCGEN) - -%.o: %.F90 - $(FC) $(FFLAGS) -I.. -c $< diff --git a/src/tests/Makefile.manual.test.mk b/src/tests/Makefile.manual.test.mk deleted file mode 100644 index 3aba355e1..000000000 --- a/src/tests/Makefile.manual.test.mk +++ /dev/null @@ -1,27 +0,0 @@ -# Common Makefile rules that are included from each test subdirectory's -# Makefile - -CPPFLAGS += -I../.. -I.. -LDFLAGS += -L../.. -L.. -lstdlib-testing -lstdlib - -OBJS = $(PROGS_SRC:.f90=.o) -PROGS = $(OBJS:.o=) -TESTPROGS = $(PROGS:=TEST) - -.PHONY: all clean test $(TESTPROGS) - -all: $(PROGS) - -test: $(TESTPROGS) - -$(TESTPROGS): - ./$(@:TEST=) - -clean: - $(RM) $(PROGS) $(OBJS) $(CLEAN_FILES) - -%.o: %.f90 - $(FC) $(FFLAGS) $(CPPFLAGS) -c $< - -$(PROGS): %: %.o - $(FC) $(FFLAGS) $(CPPFLAGS) -o $@ $^ $(LDFLAGS) diff --git a/src/tests/array/Makefile.manual b/src/tests/array/Makefile.manual deleted file mode 100644 index 2a59ac3e0..000000000 --- a/src/tests/array/Makefile.manual +++ /dev/null @@ -1,4 +0,0 @@ -PROGS_SRC = test_logicalloc.f90 - - -include ../Makefile.manual.test.mk diff --git a/src/tests/ascii/Makefile.manual b/src/tests/ascii/Makefile.manual deleted file mode 100644 index 8edb7b893..000000000 --- a/src/tests/ascii/Makefile.manual +++ /dev/null @@ -1,4 +0,0 @@ -PROGS_SRC = test_ascii.f90 - - -include ../Makefile.manual.test.mk diff --git a/src/tests/bitsets/Makefile.manual b/src/tests/bitsets/Makefile.manual deleted file mode 100644 index 0ecba442e..000000000 --- a/src/tests/bitsets/Makefile.manual +++ /dev/null @@ -1,3 +0,0 @@ -PROGS_SRC = test_stdlib_bitset_64.f90 test_stdlib_bitset_large.f90 - -include ../Makefile.manual.test.mk diff --git a/src/tests/hash_functions/Makefile.manual b/src/tests/hash_functions/Makefile.manual deleted file mode 100644 index c933bc700..000000000 --- a/src/tests/hash_functions/Makefile.manual +++ /dev/null @@ -1,47 +0,0 @@ -CC ?= gcc -CXX ?= g++ - -CPPFLAGS += -I. -I../.. -I.. -LDFLAGS += -L../.. -L.. -lstdlib-testing -lstdlib - -PROGS = test_hash_functions -TESTPROGS = $(PROGS:=TEST) - -all: $(PROGS) - -test: $(TESTPROGS) - -$(TESTPROGS): - ./$(@:TEST=) - -test_hash_functions: test_hash_functions.f90 generate_hash_arrays.o libc_hash.a - $(FC) $(FFLAGS) $(CPPFLAGS) -L. -o $@ $^ $(LDFLAGS) -lc_hash -lstdc++ - -generate_hash_arrays.o: generate_hash_arrays.cpp libc_hash.a - $(CXX) $(CXXFLAGS) -c generate_hash_arrays.cpp -o generate_hash_arrays.o - -libc_hash.a: SpookyV2.o SpookyV2Test.o pengyhash.o nmhash_scalar.o waterhash.o - ar rcs libc_hash.a SpookyV2.o SpookyV2Test.o pengyhash.o \ - nmhash_scalar.o waterhash.o - -pengyhash.o: pengyhash.c pengyhash.h - $(CC) $(CFLAGS) $(CPPFLAGS) -c pengyhash.c -o pengyhash.o - -waterhash.o: waterhash.c waterhash.h - $(CC) $(CFLAGS) $(CPPFLAGS) -c waterhash.c -o waterhash.o - -SpookyV2.o: SpookyV2.cpp SpookyV2.h - $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c SpookyV2.cpp -o SpookyV2.o - -SpookyV2Test.o: SpookyV2Test.cpp SpookyV2.h - $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c SpookyV2Test.cpp -o SpookyV2Test.o - -nmhash_scalar.o: nmhash_scalar.c nmhash_scalar.h - $(CC) $(CFLAGS) $(CPPFLAGS) -c nmhash_scalar.c -o nmhash_scalar.o - -clean: - rm nmhash_scalar.o SpookyV2Test.o SpookyV2.o waterhash.o pengyhash.o \ - libc_hash.a generate_hash_arrays.o $(PROGS) *.*mod\ - *.bin - - diff --git a/src/tests/hash_functions_perf/Makefile.manual b/src/tests/hash_functions_perf/Makefile.manual deleted file mode 100755 index d3e59bd18..000000000 --- a/src/tests/hash_functions_perf/Makefile.manual +++ /dev/null @@ -1,3 +0,0 @@ -PROGS_SRC = test_64_bit_hash_performance.f90 test_32_bit_hash_performance.f90 - -include ../Makefile.manual.test.mk diff --git a/src/tests/io/Makefile.manual b/src/tests/io/Makefile.manual deleted file mode 100644 index b6335cf82..000000000 --- a/src/tests/io/Makefile.manual +++ /dev/null @@ -1,20 +0,0 @@ -SRCFYPP = \ - test_loadtxt_qp.fypp \ - test_savetxt_qp.fypp - -SRCGEN = $(SRCFYPP:.fypp=.f90) - -PROGS_SRC = test_loadtxt.f90 \ - test_savetxt.f90 \ - test_getline.f90 \ - test_npy.f90 \ - test_parse_mode.f90 \ - test_open.f90 \ - $(SRCGEN) - -$(SRCGEN): %.f90: %.fypp ../../common.fypp - fypp -I../.. $(FYPPFLAGS) $< $@ - -CLEAN_FILES = tmp*.dat io_open.dat io_open.stream $(SRCFYPP:.fypp=.f90) $(PROGS_SRC:.f90=.mod) - -include ../Makefile.manual.test.mk diff --git a/src/tests/linalg/Makefile.manual b/src/tests/linalg/Makefile.manual deleted file mode 100644 index db51c62d4..000000000 --- a/src/tests/linalg/Makefile.manual +++ /dev/null @@ -1,14 +0,0 @@ -SRCFYPP = \ - test_linalg.fypp \ - test_linalg_matrix_property_checks.fypp - -SRCGEN = $(SRCFYPP:.fypp=.f90) - -PROGS_SRC = \ - $(SRCGEN) - -$(SRCGEN): %.f90: %.fypp ../../common.fypp - fypp -I../.. $(FYPPFLAGS) $< $@ - - -include ../Makefile.manual.test.mk diff --git a/src/tests/logger/Makefile.manual b/src/tests/logger/Makefile.manual deleted file mode 100644 index cea74fcd7..000000000 --- a/src/tests/logger/Makefile.manual +++ /dev/null @@ -1,4 +0,0 @@ -PROGS_SRC = test_stdlib_logger.f90 - - -include ../Makefile.manual.test.mk diff --git a/src/tests/math/Makefile.manual b/src/tests/math/Makefile.manual deleted file mode 100644 index 19d7a64a9..000000000 --- a/src/tests/math/Makefile.manual +++ /dev/null @@ -1,11 +0,0 @@ -SRCFYPP = \ - test_stdlib_math.fypp -SRCGEN = $(SRCFYPP:.fypp=.f90) - -PROGS_SRC = test_linspace.f90 test_logspace.f90 \ - $(SRCGEN) - -$(SRCGEN): %.f90: %.fypp ../../common.fypp - fypp -I../.. $(FYPPFLAGS) $< $@ - -include ../Makefile.manual.test.mk diff --git a/src/tests/optval/Makefile.manual b/src/tests/optval/Makefile.manual deleted file mode 100644 index 37cd5f143..000000000 --- a/src/tests/optval/Makefile.manual +++ /dev/null @@ -1,11 +0,0 @@ -SRCFYPP = \ - test_optval.fypp -SRCGEN = $(SRCFYPP:.fypp=.f90) - -PROGS_SRC = \ - $(SRCGEN) - -$(SRCGEN): %.f90: %.fypp ../../common.fypp - fypp -I../.. $(FYPPFLAGS) $< $@ - -include ../Makefile.manual.test.mk diff --git a/src/tests/quadrature/Makefile.manual b/src/tests/quadrature/Makefile.manual deleted file mode 100644 index 1d0cb9502..000000000 --- a/src/tests/quadrature/Makefile.manual +++ /dev/null @@ -1,12 +0,0 @@ -SRCFYPP = \ - test_simps.fypp \ - test_trapz.fypp -SRCGEN = $(SRCFYPP:.fypp=.f90) -PROGS_SRC = \ - test_gauss.f90 \ - $(SRCGEN) - -$(SRCGEN): %.f90: %.fypp ../../common.fypp - fypp -I../.. $(FYPPFLAGS) $< $@ - -include ../Makefile.manual.test.mk diff --git a/src/tests/selection/Makefile.manual b/src/tests/selection/Makefile.manual deleted file mode 100644 index 94a94037c..000000000 --- a/src/tests/selection/Makefile.manual +++ /dev/null @@ -1,10 +0,0 @@ -SRCFYPP = test_selection.fypp - -SRCGEN = $(SRCFYPP:.fypp=.f90) - -$(SRCGEN): %.f90: %.fypp ../../common.fypp - fypp -I../.. $(FYPPFLAGS) $< $@ - -PROGS_SRC = $(SRCGEN) - -include ../Makefile.manual.test.mk diff --git a/src/tests/sorting/Makefile.manual b/src/tests/sorting/Makefile.manual deleted file mode 100644 index 39657c8f3..000000000 --- a/src/tests/sorting/Makefile.manual +++ /dev/null @@ -1,3 +0,0 @@ -PROGS_SRC = test_sorting.f90 - -include ../Makefile.manual.test.mk diff --git a/src/tests/stats/Makefile.manual b/src/tests/stats/Makefile.manual deleted file mode 100644 index 23c027dbf..000000000 --- a/src/tests/stats/Makefile.manual +++ /dev/null @@ -1,16 +0,0 @@ -SRCFYPP = \ - test_mean.fypp \ - test_median.fypp \ - test_distribution_uniform.fypp \ - test_distribution_normal.fypp \ - test_distribution_exponential.fypp - -SRCGEN = $(SRCFYPP:.fypp=.f90) - -$(SRCGEN): %.f90: %.fypp ../../common.fypp - fypp -I../.. $(FYPPFLAGS) $< $@ - -PROGS_SRC = $(SRCGEN) test_mean.f90 test_moment.f90 test_var.f90 test_random.f90 - - -include ../Makefile.manual.test.mk diff --git a/src/tests/string/Makefile.manual b/src/tests/string/Makefile.manual deleted file mode 100644 index 8b93f625b..000000000 --- a/src/tests/string/Makefile.manual +++ /dev/null @@ -1,11 +0,0 @@ -PROGS_SRC = test_string_assignment.f90 \ - test_string_derivedtype_io.f90 \ - test_string_functions.f90 \ - test_string_intrinsic.f90 \ - test_string_match.f90 \ - test_string_operator.f90 \ - test_string_strip_chomp.f90 \ - test_string_to_string.f90 - - -include ../Makefile.manual.test.mk diff --git a/src/tests/stringlist/Makefile.manual b/src/tests/stringlist/Makefile.manual deleted file mode 100644 index 8140e758c..000000000 --- a/src/tests/stringlist/Makefile.manual +++ /dev/null @@ -1,5 +0,0 @@ -PROGS_SRC = test_insert_at.f90 \ - test_append_prepend.f90 - - -include ../Makefile.manual.test.mk From 71b2b80313fec149db854826836ccfb6d9ab2307 Mon Sep 17 00:00:00 2001 From: milancurcic Date: Sat, 7 May 2022 14:50:07 -0400 Subject: [PATCH 2/4] Remove manual make jobs from CI --- .github/workflows/CI.yml | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml index 2bba4d8a1..1798963f4 100644 --- a/.github/workflows/CI.yml +++ b/.github/workflows/CI.yml @@ -26,9 +26,6 @@ jobs: - os: ubuntu-latest gcc_v: 10 build: cmake-inline - - os: ubuntu-latest - gcc_v: 10 - build: make env: FC: gfortran-${{ matrix.gcc_v }} CC: gcc-${{ matrix.gcc_v }} @@ -95,15 +92,6 @@ jobs: if: ${{ contains(matrix.build, 'cmake') }} run: cmake --install ${{ env.BUILD_DIR }} - - name: Test manual makefiles - if: ${{ matrix.build == 'make' }} - run: | - make -f Makefile.manual -j - make -f Makefile.manual test - make -f Makefile.manual clean - env: - ADD_FYPPFLAGS: "-DMAXRANK=4" - intel-build: runs-on: ${{ matrix.os }} strategy: From ed9ef9a01ac004c441cfb77b70263b22a17c0388 Mon Sep 17 00:00:00 2001 From: milancurcic Date: Sat, 7 May 2022 14:51:02 -0400 Subject: [PATCH 3/4] Remove manual Make instructions from docs --- README.md | 27 --------------------------- WORKFLOW.md | 17 ----------------- 2 files changed, 44 deletions(-) diff --git a/README.md b/README.md index a43813098..edff67e4f 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,6 @@ - [Requirements](#requirements) - [Supported compilers](#supported-compilers) - [Build with CMake](#build-with-cmake) - - [Build with make](#build-with-make) - [Build with fortran-lang/fpm](#build-with-fortran-langfpm) * [Using stdlib in your project](#using-stdlib-in-your-project) * [Documentation](#documentation) @@ -168,32 +167,6 @@ If at some point you wish to recompile `stdlib` with different options, you migh want to delete the `build` folder. This will ensure that cached variables from earlier builds do not affect the new build. - -### Build with make - -Alternatively, you can build using provided Makefiles: - -```sh -make -f Makefile.manual -``` - -You can limit the maximum rank by setting ``-DMAXRANK=`` in the ``ADD_FYPPFLAGS`` environment variable (which can reduce the compilation time): - -```sh -make -f Makefile.manual ADD_FYPPFLAGS=-DMAXRANK=4 -``` - -You can also specify the compiler and compiler-flags by setting the ``FC`` and ``FFLAGS`` environmental variables. Among other things, this facilitates use of compiler optimizations that are not specified in the Makefile.manual defaults. -```sh -make -f Makefile.manual ADD_FYPPFLAGS=-DMAXRANK=4 FC=gfortran FFLAGS="-O3" -``` - -On some systems, ``make`` selects the wrong default compiler. If you encounter error messages like ``make[1]: f77: No such file or directory`` set ``FC`` to your preferred compiler (e.g., ``gfortran``) or try - -```sh -make -f Makefile.manual --no-builtin-variables -``` - ### Build with [fortran-lang/fpm](https://github.com/fortran-lang/fpm) Fortran Package Manager (fpm) is a package manager and build system for Fortran. diff --git a/WORKFLOW.md b/WORKFLOW.md index c6d72b3b5..b54537dc1 100644 --- a/WORKFLOW.md +++ b/WORKFLOW.md @@ -113,20 +113,3 @@ The project is usable as CMake subproject. Explicit references to break subproject builds. An example project is available [here](https://github.com/fortran-lang/stdlib-cmake-example) to test the CMake subproject integration. - - -### Make build files - -The build files for ``make`` are using the name ``Makefile.manual`` to -not conflict with the in-tree build of CMake. -This project uses recursive make to transverse the subdirectory structure -from the top-level makefile, called ``Makefile.manual``, and the build -happens in-tree, *i.e.* build artifacts are present along with the source code. - -New source files are added in ``src/Makefile.manual`` and include manual -dependency definitions through the object files to allow parallel -compilation. -Tests are generated by the make include file ``src/tests/Makefile.manual.test.mk`` -and defined in the subdirectories of the ``src/tests`` as entries in ``PROGS_SRC``. -New subdirectories have to be explicitly added to ``src/tests/Makefile.manual`` -or are ignored. From 0a43a54cd985600641bfce3f09d4d77577cf9115 Mon Sep 17 00:00:00 2001 From: Milan Curcic Date: Thu, 19 May 2022 12:08:38 -0400 Subject: [PATCH 4/4] Clean up outstanding references to Make builds --- README.md | 9 --------- WORKFLOW.md | 10 +++------- 2 files changed, 3 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index edff67e4f..366fb9f5e 100644 --- a/README.md +++ b/README.md @@ -203,15 +203,6 @@ target_link_libraries( To make the installed stdlib project discoverable add the stdlib directory to the ``CMAKE_PREFIX_PATH``. The usual install location of the package files is ``$PREFIX/lib/cmake/fortran_stdlib``. -For non-CMake build systems (like make) you can use the exported pkg-config file by setting ``PKG_CONFIG_PATH`` to include the directory containing the exported pc-file. -The usual install location of the pc-file is ``$PREFIX/lib/pkgconfig``. -In make you can obtain the required compile and link arguments with - -```make -STDLIB_CFLAGS := $(shell pkg-config --cflags fortran_stdlib) -STDLIB_LIBS := $(shell pkg-config --libs fortran_stdlib) -``` - ## Documentation Documentation is a work in progress (see issue [#4](https://github.com/fortran-lang/stdlib/issues/4)) but already available at [stdlib.fortran-lang.org](https://stdlib.fortran-lang.org). diff --git a/WORKFLOW.md b/WORKFLOW.md index b54537dc1..e9ffe14a3 100644 --- a/WORKFLOW.md +++ b/WORKFLOW.md @@ -61,14 +61,10 @@ You are welcome to propose changes to this workflow by opening an [issue](https://github.com/fortran-lang/stdlib/issues). -## Build system - -This project supports two build systems right now, CMake and make. -Eventually, stdlib will be using the Fortran package manager -([fpm](https://github.com/fortran-lang/fpm)) as build system as well. -The effort of supporting fpm is tracked in issue -[#279](https://github.com/fortran-lang/stdlib/issues/279). +## Build systems +This project supports two build systems, +[fpm](https://github.com/fortran-lang/fpm) and CMake. ### CMake build files