diff --git a/v2/tools/pathscale.jam b/v2/tools/pathscale.jam index 1dfc78540..b5aa910d7 100644 --- a/v2/tools/pathscale.jam +++ b/v2/tools/pathscale.jam @@ -12,7 +12,7 @@ import common ; import fortran ; feature.extend toolset : pathscale ; -toolset.inherit pathscale : unix ; +toolset.inherit pathscale : unix ; generators.override pathscale.prebuilt : builtin.prebuilt ; generators.override pathscale.searched-lib-generator : searched-lib-generator ; @@ -63,41 +63,46 @@ generators.register-fortran-compiler pathscale.compile.fortran : FORTRAN : OBJ : generators.register-fortran90-compiler pathscale.compile.fortran90 : FORTRAN90 : OBJ : pathscale ; # Declare flags and actions for compilation -flags pathscale.compile OPTIONS on : -g ; -flags pathscale.compile OPTIONS on : -pg ; -flags pathscale.compile OPTIONS shared : -fPIC ; +flags pathscale.compile OPTIONS off : -O0 ; flags pathscale.compile OPTIONS speed : -O3 ; flags pathscale.compile OPTIONS space : -Os ; + +flags pathscale.compile OPTIONS off : -noinline ; +flags pathscale.compile OPTIONS on : -inline ; +flags pathscale.compile OPTIONS full : -inline ; + +flags pathscale.compile OPTIONS off : -woffall ; +flags pathscale.compile OPTIONS on : -Wall ; +flags pathscale.compile OPTIONS all : -Wall -pedantic ; +flags pathscale.compile OPTIONS on : -Werror ; + +flags pathscale.compile OPTIONS on : -ggdb ; +flags pathscale.compile OPTIONS on : -pg ; +flags pathscale.compile OPTIONS shared : -fPIC ; flags pathscale.compile OPTIONS 32 : -m32 ; flags pathscale.compile OPTIONS 64 : -m64 ; -flags pathscale.compile OPTIONS off : -woffall -Wno-uninitialized ; -flags pathscale.compile OPTIONS on : -Wall -Wno-uninitialized ; -flags pathscale.compile OPTIONS all : -Wall -Wno-uninitialized ; - -flags pathscale.compile.c++ OPTIONS off : -noinline ; - -flags pathscale.compile OPTIONS ; -flags pathscale.compile.c++ OPTIONS ; +flags pathscale.compile USER_OPTIONS ; +flags pathscale.compile.c++ USER_OPTIONS ; flags pathscale.compile DEFINES ; flags pathscale.compile INCLUDES ; -flags pathscale.compile.fortran OPTIONS ; -flags pathscale.compile.fortran90 OPTIONS ; +flags pathscale.compile.fortran USER_OPTIONS ; +flags pathscale.compile.fortran90 USER_OPTIONS ; actions compile.c { - "$(CONFIG_C_COMMAND)" $(OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)" + "$(CONFIG_C_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)" } actions compile.c++ { - "$(CONFIG_COMMAND)" $(OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)" + "$(CONFIG_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)" } actions compile.fortran { - "$(CONFIG_F_COMMAND)" $(OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)" + "$(CONFIG_F_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -c -o "$(<)" "$(>)" } rule compile.fortran90 ( targets * : sources * : properties * ) @@ -112,15 +117,15 @@ rule compile.fortran90 ( targets * : sources * : properties * ) actions compile.fortran90 { - "$(CONFIG_F90_COMMAND)" $(OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -module $(<[1]:D) -c -o "$(<)" "$(>)" + "$(CONFIG_F90_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -D$(DEFINES) -I"$(INCLUDES)" -module $(<[1]:D) -c -o "$(<)" "$(>)" } # Declare flags and actions for linking -flags pathscale.link OPTIONS on : -g ; +flags pathscale.link OPTIONS on : -ggdb -rdynamic ; # Strip the binary when no debugging is needed flags pathscale.link OPTIONS off : -g0 ; flags pathscale.link OPTIONS on : -pg ; -flags pathscale.link OPTIONS ; +flags pathscale.link USER_OPTIONS ; flags pathscale.link LINKPATH ; flags pathscale.link FINDLIBS-ST ; flags pathscale.link FINDLIBS-SA ; @@ -141,7 +146,7 @@ rule link ( targets * : sources * : properties * ) actions link bind LIBRARIES { - "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) + "$(CONFIG_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" -o "$(<)" "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) } # Slight mods for dlls @@ -152,7 +157,7 @@ rule link.dll ( targets * : sources * : properties * ) actions link.dll bind LIBRARIES { - "$(CONFIG_COMMAND)" $(OPTIONS) -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" -o "$(<)" -Wl,-soname$(SPACE)-Wl,$(<[1]:D=) -shared "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) + "$(CONFIG_COMMAND)" $(OPTIONS) $(USER_OPTIONS) -L"$(LINKPATH)" -Wl,$(RPATH_OPTION:E=-R)$(SPACE)-Wl,"$(RPATH)" -o "$(<)" -Wl,-soname$(SPACE)-Wl,$(<[1]:D=) -shared "$(>)" "$(LIBRARIES)" -l$(FINDLIBS-SA) -l$(FINDLIBS-ST) } # Declare action for creating static libraries