[modes] modes = shared-gnu static-gnu shared-gnu-debug static-gnu-debug test-driver-gnu test-driver-nested-gnu test-driver-string-gnu test-driver-gnu-debug test-driver-nested-gnu-debug test-driver-string-gnu-debug shared-intel static-intel shared-intel-debug static-intel-debug test-driver-intel test-driver-intel-debug test-driver-nested-gnu-coverage test-driver-string-gnu-coverage [common-variables] $CSHARED_GNU = -cpp -c -fPIC -frealloc-lhs $CSHARED_INT = -cpp -c -fpic -assume realloc_lhs $LSHARED = -shared $CSTATIC_GNU = -cpp -c -frealloc-lhs $CSTATIC_INT = -cpp -c -assume realloc_lhs $DEBUG_GNU = -O0 -g3 -Warray-bounds -Wcharacter-truncation -Wline-truncation -Wimplicit-interface -Wimplicit-procedure -Wunderflow -fcheck=all -fmodule-private -ffree-line-length-132 -fimplicit-none -fbacktrace -fdump-core -finit-real=nan -std=f2008 -fall-intrinsics $DEBUG_INT = -O0 -debug all -check all -warn all -extend-source 132 -traceback -gen-interfaces#-fpe-all=0 -fp-stack-check -fstack-protector-all -ftrapuv -no-ftz -std08 $OPTIMIZE = -O2 # main modes # GNU [shared-gnu] template = template-shared-gnu target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./shared/ output = FLAP.so mklib = shared [static-gnu] template = template-static-gnu target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./static/ output = FLAP.a mklib = static [shared-gnu-debug] template = template-shared-gnu-debug target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./shared/ output = FLAP.so mklib = shared [static-gnu-debug] template = template-static-gnu-debug target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./static/ output = FLAP.a mklib = static [test-driver-gnu] template = template-static-gnu target = src/Test_Driver.f90 build_dir = ./Test_Driver/ output = Test_Driver [test-driver-nested-gnu] template = template-static-gnu target = src/Test_Driver_Nested.f90 build_dir = ./Test_Driver_Nested/ output = Test_Driver_Nested [test-driver-string-gnu] template = template-static-gnu target = src/Test_Driver_Args_From_String.f90 build_dir = ./Test_Driver_String/ output = Test_Driver_String [test-driver-gnu-debug] template = template-static-gnu-debug target = src/Test_Driver.f90 build_dir = ./Test_Driver/ output = Test_Driver [test-driver-nested-gnu-debug] template = template-static-gnu-debug target = src/Test_Driver_Nested.f90 build_dir = ./Test_Driver_Nested/ output = Test_Driver_Nested [test-driver-string-gnu-debug] template = template-static-gnu-debug target = src/Test_Driver_Args_From_String.f90 build_dir = ./Test_Driver_String/ output = Test_Driver_String # Intel [shared-intel] template = template-shared-intel target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./shared/ output = FLAP.so mklib = shared [static-intel] template = template-static-intel target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./static/ output = FLAP.a mklib = static [shared-intel-debug] template = template-shared-intel-debug target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./shared/ output = FLAP.so mklib = shared [static-intel-debug] template = template-static-intel-debug target = src/Data_Type_Command_Line_Interface.F90 build_dir = ./static/ output = FLAP.a mklib = static [test-driver-intel] template = template-static-intel target = src/Test_Driver.f90 build_dir = ./Test_Driver/ output = Test_Driver [test-driver-intel-debug] template = template-static-intel-debug target = src/Test_Driver.f90 build_dir = ./Test_Driver/ output = Test_Driver # coverage [test-driver-nested-gnu-coverage] template = template-static-gnu target = src/Test_Driver_Nested.f90 build_dir = ./Test_Driver/ output = Test_Driver_Nested coverage = True [test-driver-string-gnu-coverage] template = template-static-gnu target = src/Test_Driver_Args_From_String.f90 build_dir = ./Test_Driver/ output = Test_Driver_String coverage = True #templates [template-shared-gnu] compiler = gnu cflags = $CSHARED_GNU $OPTIMIZE lflags = $LSHARED $OPTIMIZE mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [template-static-gnu] compiler = gnu cflags = $CSTATIC_GNU $OPTIMIZE mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [template-shared-gnu-debug] compiler = gnu cflags = $CSHARED_GNU $DEBUG_GNU lflags = $LSHARED $DEBUG_GNU mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [template-static-gnu-debug] compiler = gnu cflags = $CSTATIC_GNU $DEBUG_GNU lflags = $DEBUG_GNU mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [template-shared-intel] compiler = intel cflags = $CSHARED_INT $OPTIMIZE lflags = $LSHARED $OPTIMIZE mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [template-static-intel] compiler = intel cflags = $CSTATIC_INT $OPTIMIZE lflags = $OPTIMIZE mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [template-shared-intel-debug] compiler = intel cflags = $CSHARED_INT $DEBUG_INT lflags = $LSHARED $DEBUG_INT mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [template-static-intel-debug] compiler = intel cflags = $CSTATIC_INT $DEBUG_INT lflags = $DEBUG_INT mod_dir = ./mod/ obj_dir = ./obj/ src = ./src/ colors = True quiet = False log = True jobs = 2 [rule-makedoc] help = Rule for building documentation from source files rule_1 = rm -rf doc/html/* rule_2 = ford doc/main_page.md rule_3 = cp -r doc/html/publish/* doc/html/ [rule-deldoc] help = Rule for deleting documentation rule = rm -rf doc/html/* [rule-maketar] help = Rule for making tar archive of the project rule = tar -czf FLAP.tar.gz * [rule-makecoverage] help = Rule for performing coverage analysis rule_1 = FoBiS.py clean -mode test-driver-gnu rule_2 = FoBiS.py build -mode test-driver-gnu -coverage rule_3 = FoBiS.py build -mode test-driver-nested-gnu-coverage rule_4 = FoBiS.py build -mode test-driver-string-gnu-coverage rule_5 = ./Test_Driver/Test_Driver rule_6 = ./Test_Driver/Test_Driver -v rule_7 = ./Test_Driver/Test_Driver -h rule_8 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -i 2 rule_9 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -i 3 -ie 11 rule_10 = ./Test_Driver/Test_Driver 33.0 -s 'Hello FLAP' --integer_list 10 -3 87 -i 3 -r 64.123d0 --boolean --boolean_val .false. rule_11 = ./Test_Driver/Test_Driver -s 'Hello FLAP' --man_file FLAP.1 rule_12 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -vlI1P 2 1 3 -vlI2P 12 -2 -vlI4P 1 -vlI8P 1 -vlR8P 121.31 -vlR4P 3423121.31 -vlChar foo bar -vlBool T F T F rule_13 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -- foo.bar bar/baz.f90 rule_14 = ./Test_Driver/Test_Driver_Nested rule_15 = ./Test_Driver/Test_Driver_Nested -h rule_16 = ./Test_Driver/Test_Driver_Nested -a rule_17 = ./Test_Driver/Test_Driver_Nested init rule_18 = ./Test_Driver/Test_Driver_Nested init commit -m 'hello' rule_19 = ./Test_Driver/Test_Driver_Nested commit -m 'hello' rule_20 = ./Test_Driver/Test_Driver_Nested tag -a 'hello' rule_21 = ./Test_Driver/Test_Driver_String rule_22 = gcov -o Test_Driver/obj/ src/Data_Type_Command_Line_Interface.F90 [rule-coverage-analysis] help = Rule for performing coverage analysis and saving reports in markdown rule_1 = FoBiS.py clean -mode test-driver-gnu rule_2 = FoBiS.py build -mode test-driver-gnu -coverage rule_3 = FoBiS.py build -mode test-driver-nested-gnu-coverage rule_4 = FoBiS.py build -mode test-driver-string-gnu-coverage rule_5 = ./Test_Driver/Test_Driver rule_6 = ./Test_Driver/Test_Driver -v rule_7 = ./Test_Driver/Test_Driver -h rule_8 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -i 2 rule_9 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -i 3 -ie 11 rule_10 = ./Test_Driver/Test_Driver 33.0 -s 'Hello FLAP' --integer_list 10 -3 87 -i 3 -r 64.123d0 --boolean --boolean_val .false. rule_11 = ./Test_Driver/Test_Driver -s 'Hello FLAP' --man_file FLAP.1 rule_12 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -vlI1P 2 1 3 -vlI2P 12 -2 -vlI4P 1 -vlI8P 1 -vlR8P 121.31 -vlR4P 3423121.31 -vlChar foo bar -vlBool T F T F rule_13 = ./Test_Driver/Test_Driver -s 'Hello FLAP' -- foo.bar bar/baz.f90 rule_14 = ./Test_Driver/Test_Driver_Nested rule_15 = ./Test_Driver/Test_Driver_Nested -h rule_16 = ./Test_Driver/Test_Driver_Nested -a rule_17 = ./Test_Driver/Test_Driver_Nested init rule_18 = ./Test_Driver/Test_Driver_Nested init commit -m 'hello' rule_19 = ./Test_Driver/Test_Driver_Nested commit -m 'hello' rule_20 = ./Test_Driver/Test_Driver_Nested tag -a 'hello' rule_21 = ./Test_Driver/Test_Driver_String rule_22 = gcov -o Test_Driver/obj/ src/* rule_23 = FoBiS.py rule -gcov_analyzer wiki/ Coverage-Analysis rule_24 = rm -f *.gcov FLAP.1