https://github.com/szaghi/FLAP
Raw File
Tip revision: dcb7f10bc8a5de284b4a0ccfa5f31c7f80d68534 authored by Stefano Zaghi on 15 April 2015, 12:12:00 UTC
Refactor default apparence to be POSIX compliant
Tip revision: dcb7f10
fobos
[modes]
modes = shared-gnu static-gnu test-driver-gnu
        shared-gnu-debug static-gnu-debug test-driver-gnu-debug
        shared-intel static-intel test-driver-intel
        shared-intel-debug static-intel-debug test-driver-intel-debug

[common-variables]
$CSHARED_GNU = -DGNU -cpp -c -fPIC -frealloc-lhs
$CSHARED_INT = -cpp -c -fpic -assume realloc_lhs
$LSHARED     = -shared
$CSTATIC_GNU = -DGNU -cpp -c -frealloc-lhs
$CSTATIC_INT = -cpp -c -assume realloc_lhs
$DEBUG_GNU   = -DGNU -O0 -g3 -Warray-bounds -Wcharacter-truncation -Wline-truncation -Wimplicit-interface -Wimplicit-procedure -Wunderflow -Wuninitialized -fcheck=all -fmodule-private -ffree-line-length-132 -fimplicit-none -fbacktrace -fdump-core -finit-real=nan -std=f2003 -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 -std03
$OPTIMIZE    = -O2

# main modes
[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

[test-driver-gnu]
template = template-static-gnu
target   = src/Test_Driver.f90
build_dir = ./Test_Driver/
output   = Test_Driver

[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-debug]
template  = template-static-gnu-debug
target    = src/Test_Driver.f90
build_dir = ./Test_Driver/
output    = Test_Driver

[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

[test-driver-intel]
template = template-static-intel
target   = src/Test_Driver.f90
build_dir = ./Test_Driver/
output   = Test_Driver

[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-debug]
template  = template-static-intel-debug
target    = src/Test_Driver.f90
build_dir = ./Test_Driver/
output    = Test_Driver

#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  = ./Test_Driver/Test_Driver
rule_4  = ./Test_Driver/Test_Driver -v
rule_5  = ./Test_Driver/Test_Driver -s 'Hello FLAP' -i 2
rule_6  = ./Test_Driver/Test_Driver 33.0 -s 'Hello FLAP' --integer_list 10 -3 87 -i 3 -r 64.123d0  --boolean --boolean_val .false.

[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  = ./Test_Driver/Test_Driver
rule_4  = ./Test_Driver/Test_Driver -v
rule_5  = ./Test_Driver/Test_Driver -s 'Hello FLAP' -i 2
rule_6  = ./Test_Driver/Test_Driver 33.0 -s 'Hello FLAP' --integer_list 10 -3 87 -i 3 -r 64.123d0  --boolean --boolean_val .false.
rule_7  = gcov -o Test_Driver/obj/ src/*
rule_8  = FoBiS.py rule -gcov_analyzer wiki/ Coverage-Analysis
rule_9  = rm -f *.gcov
back to top