From af214b59836faea854ee5cb9428f00827389cd16 Mon Sep 17 00:00:00 2001 From: ketmar Date: Fri, 17 Feb 2012 15:13:37 +0200 Subject: [PATCH] cosmetix in Jambase layout --- defaults/Jambase.build | 18 +- defaults/Jambase.fix | 4 +- defaults/Jambase.link | 15 +- defaults/Jambase.main | 6 +- defaults/Jambase.misc | 223 +------------------------ defaults/Jambase.vars | 2 +- defaults/{ => build}/Jambase.build.ar | 0 defaults/{ => build}/Jambase.build.as | 0 defaults/{ => build}/Jambase.build.c | 0 defaults/{ => build}/Jambase.build.cpp | 0 defaults/{ => build}/Jambase.build.genfile | 0 defaults/{ => build}/Jambase.build.hdr | 0 defaults/{ => build}/Jambase.build.lex | 0 defaults/{ => build}/Jambase.build.objc | 0 defaults/{ => build}/Jambase.build.yacc | 0 defaults/dc/Jambase.build.dc | 19 --- defaults/{ => fix}/Jambase.fix.nix | 0 defaults/{ => fix}/Jambase.fix.nt | 0 defaults/link/Jambase.link.c | 3 + defaults/link/Jambase.link.cpp | 3 + defaults/{ => link}/Jambase.link.libs | 0 defaults/{ => link}/Jambase.link.objc | 0 defaults/{ => link/c}/Jambase.link.c | 0 defaults/{ => link/c}/Jambase.link.lib.c | 0 defaults/{ => link/c}/Jambase.link.libso.c | 0 defaults/{ => link/cpp}/Jambase.link.cpp | 0 defaults/{ => link/cpp}/Jambase.link.lib.cpp | 0 defaults/{ => link/cpp}/Jambase.link.libso.cpp | 0 defaults/{ => main}/Jambase.main.c | 0 defaults/{ => main}/Jambase.main.cpp | 0 defaults/{ => main}/Jambase.main.objc | 0 defaults/{ => misc}/Jambase.misc | 2 +- defaults/{ => misc/fsys}/Jambase.misc.fsys | 0 33 files changed, 27 insertions(+), 268 deletions(-) rewrite defaults/Jambase.misc (100%) rename defaults/{ => build}/Jambase.build.ar (100%) rename defaults/{ => build}/Jambase.build.as (100%) rename defaults/{ => build}/Jambase.build.c (100%) rename defaults/{ => build}/Jambase.build.cpp (100%) rename defaults/{ => build}/Jambase.build.genfile (100%) rename defaults/{ => build}/Jambase.build.hdr (100%) rename defaults/{ => build}/Jambase.build.lex (100%) rename defaults/{ => build}/Jambase.build.objc (100%) rename defaults/{ => build}/Jambase.build.yacc (100%) delete mode 100644 defaults/dc/Jambase.build.dc rename defaults/{ => fix}/Jambase.fix.nix (100%) rename defaults/{ => fix}/Jambase.fix.nt (100%) create mode 100644 defaults/link/Jambase.link.c create mode 100644 defaults/link/Jambase.link.cpp rename defaults/{ => link}/Jambase.link.libs (100%) rename defaults/{ => link}/Jambase.link.objc (100%) rename defaults/{ => link/c}/Jambase.link.c (100%) rename defaults/{ => link/c}/Jambase.link.lib.c (100%) rename defaults/{ => link/c}/Jambase.link.libso.c (100%) rename defaults/{ => link/cpp}/Jambase.link.cpp (100%) rename defaults/{ => link/cpp}/Jambase.link.lib.cpp (100%) rename defaults/{ => link/cpp}/Jambase.link.libso.cpp (100%) rename defaults/{ => main}/Jambase.main.c (100%) rename defaults/{ => main}/Jambase.main.cpp (100%) rename defaults/{ => main}/Jambase.main.objc (100%) copy defaults/{ => misc}/Jambase.misc (99%) rename defaults/{ => misc/fsys}/Jambase.misc.fsys (100%) diff --git a/defaults/Jambase.build b/defaults/Jambase.build index 806d314..36c282d 100644 --- a/defaults/Jambase.build +++ b/defaults/Jambase.build @@ -1,9 +1,9 @@ -. Jambase.build.hdr -. Jambase.build.as -. Jambase.build.ar -. Jambase.build.c -. Jambase.build.cpp -. Jambase.build.objc -. Jambase.build.lex -. Jambase.build.yacc -. Jambase.build.genfile +. build/Jambase.build.hdr +. build/Jambase.build.as +. build/Jambase.build.ar +. build/Jambase.build.c +. build/Jambase.build.cpp +. build/Jambase.build.objc +. build/Jambase.build.lex +. build/Jambase.build.yacc +. build/Jambase.build.genfile diff --git a/defaults/Jambase.fix b/defaults/Jambase.fix index 09a8ca1..f2c78bb 100644 --- a/defaults/Jambase.fix +++ b/defaults/Jambase.fix @@ -24,5 +24,5 @@ if $(NOARUPDATE) { } -. Jambase.fix.nix -. Jambase.fix.nt +. fix/Jambase.fix.nix +. fix/Jambase.fix.nt diff --git a/defaults/Jambase.link b/defaults/Jambase.link index f1ba81a..cb5cc73 100644 --- a/defaults/Jambase.link +++ b/defaults/Jambase.link @@ -1,11 +1,4 @@ -. Jambase.link.c -. Jambase.link.lib.c -. Jambase.link.libso.c - -. Jambase.link.cpp -. Jambase.link.lib.cpp -. Jambase.link.libso.cpp - -. Jambase.link.objc - -. Jambase.link.libs +. link/Jambase.link.c +. link/Jambase.link.cpp +. link/Jambase.link.objc +. link/Jambase.link.libs diff --git a/defaults/Jambase.main b/defaults/Jambase.main index 8dfc306..3552dda 100644 --- a/defaults/Jambase.main +++ b/defaults/Jambase.main @@ -1,3 +1,3 @@ -. Jambase.main.c -. Jambase.main.cpp -. Jambase.main.objc +. main/Jambase.main.c +. main/Jambase.main.cpp +. main/Jambase.main.objc diff --git a/defaults/Jambase.misc b/defaults/Jambase.misc dissimilarity index 100% index 5ce5ea2..b1a8c3e 100644 --- a/defaults/Jambase.misc +++ b/defaults/Jambase.misc @@ -1,222 +1 @@ -# miscelaneous helper rules - -# -# Utility rules; no side effects on these -# - -# /FGrist path to file ; -# -# Returns a single string that is used as grist -# -rule FGrist { - return $(<:J=!) ; -} - - -rule FGristFiles { - return $(<:G=$(SOURCE_GRIST:E)) ; -} - - -rule FGristSourceFiles { - ## LOCAL CHANGE: OPT_HEADER_CACHE_EXT - # With header caching, there is no performance penalty to gristing - # header files. It is also not correct to assume that header - # files have global visibility. - # - # Here we comment out the old version and replace it with the new. -# # Produce source file name name with grist in it, -# # if SOURCE_GRIST is set. -# -# # Leave header files alone, because they have a global -# # visibility. -# if ! $(SOURCE_GRIST) { -# return $(<) ; -# } else { -# local _i _o ; -# -# for _i in $(<) { -# switch $(_i) { -# case *.h : _o += $(_i) ; -# case * : _o += $(_i:G=$(SOURCE_GRIST)) ; -# } -# } -# return $(_o) ; -# } - return [ FGristFiles $(<) ] ; -} - - -rule FReverse { - if $(1) { return [ FReverse $(1[2-]) ] $(1[1]) ; } -} - - -rule FSubDir { - # If $(>) is the path to the current directory, compute the - # path (using ../../ etc) back to that root directory. - # Sets result in $(<) - if ! $(<[1]) { - return $(DOT) ; - } else { - local _i _d ; - - _d = $(DOTDOT) ; - for _i in $(<[2-]) { _d = $(_d:R=$(DOTDOT)) ; } - return $(_d) ; - } -} - - -rule FStripCommon { - # FStripCommon v1 : v2 ; - - # Strip common initial elements of variables v1 and v2. - # Modifies the variable values themselves. - if $($(<)[1]) && $($(<)[1]) = $($(>)[1]) { - $(<) = $($(<)[2-]) ; - $(>) = $($(>)[2-]) ; - FStripCommon $(<) : $(>) ; - } -} - - -rule FRelPath { - local _l _r ; - - # first strip off common parts - _l = $(<) ; - _r = $(>) ; - FStripCommon _l : _r ; - - # now make path to root and path down - _l = [ FSubDir $(_l) ] ; - _r = [ FDirName $(_r) ] ; - - # Concatenate and save - # XXX This should be better - if $(_r) = $(DOT) { return $(_l) ; } else { return $(_r:R=$(_l)) ; } -} - - -rule FAppendSuffix { - # E.g., "FAppendSuffix yacc lex foo.bat : $(SUFEXE) ;" - # returns (yacc,lex,foo.bat) on Unix and - # (yacc.exe,lex.exe,foo.bat) on NT. - if $(>) { - local _i _o ; - - for _i in $(<) { - if $(_i:S) { _o += $(_i) ; } else { _o += $(_i:S=$(>)) ; } - } - return $(_o) ; - } else { - return $(<) ; - } -} - - -# -# Operating system specific utility rules -# First, the (generic) UNIX versions -# - -rule FQuote { return "\\\"$(<)\\\"" ; } -rule FDefines { return -D$(<) ; } -rule FIncludes { return -I$(<) ; } - -rule FDirName { - # Turn individual elements in $(<) into a usable path. - local _i ; - local _s = $(DOT) ; - - for _i in $(<) { _s = $(_i:R=$(_s)) ; } - return $(_s) ; -} - - -if $(NT) && $(JAM_TOOLSET) != MINGW && $(JAM_TOOLSET) != LCC { - rule FDefines { return /D$(<) ; } - rule FIncludes { return /I$(<) ; } -} - - -rule remove-std99-flags { - local orm = "^(\\-std=c99)" "^(\\-std=gnu99)" ; - local res = [ RemoveOptWild $(orm) : $(<) ] ; - return $(res) ; -} - - -# VAR = [ RemoveOptWild regexp-options-to-remove : options-list ] ; -# remove options from list with egrep-like regexps -rule RemoveOptWild { - local oname = $(1) ; - local str = $(2) ; - local res = ; - local f ; - local t ; - #Echo "removing " $(oname) " from " $(str) ; - for f in $(str) { - t = [ Match $(oname) : $(f) ] ; - #Echo $(f) ": " $(t) ; - if $(t[1]) = "" { - #Echo "include: " $(f) ; - res += $(f) ; - } - } - return $(res) ; -} - - -# remove-opt-flags $(var) -# remove optimization flags from compiler options -rule remove-opt-flags { - local orm = "^(\\-march\\=)" "^(\\-mtune\\=)" "^(\\-mfpmath\\=)" "^(\\-O.$)" ; - local ormff = "^(\\-f[^n][^o])" ; - local res = [ RemoveOptWild $(orm) $(ormff) : $(<) ] ; - return $(res) ; -} - - -rule remove-opt-flags-for-all-compilers { - OPTIM = [ remove-opt-flags $(OPTIM) ] ; - C++OPTIM = [ remove-opt-flags $(C++OPTIM) ] ; - OBJCOPTIM = [ remove-opt-flags $(OBJCOPTIM) ] ; - OPTIM.all = [ remove-opt-flags $(OPTIM.all) ] ; - - OPTIM = [ RemoveOptWild $(orm) $(ormff) : $(OPTIM) ] ; - C++OPTIM = [ RemoveOptWild $(orm) $(ormff) : $(C++OPTIM) ] ; - OBJCOPTIM = [ RemoveOptWild $(orm) $(ormff) : $(OBJCOPTIM) ] ; - OPTIM.all = [ RemoveOptWild $(orm) $(ormff) : $(OPTIM.all) ] ; -} - - -rule sys-has-command { - local cf ; - - cf = [ Command "which \"$(1)\" 2>/dev/null 1>&2" : exit-code code-first ] ; - #Echo "cf:" $(cf) ; - if $(cf[1]) = "0" { - return "tan" ; - } - - return "" ; -} - - -rule gcc-suggest-attrs { - if $(SUGGEST) { - CFLAGS.all += -Wsuggest-attribute=const ; - CFLAGS.all += -Wsuggest-attribute=pure ; - CFLAGS.all += -Wsuggest-attribute=noreturn ; - } -} - - -rule Undefines { - UNDEFS on [ FAppendSuffix $(<) : $(SUFEXE) ] += $(UNDEFFLAG)$(>) ; -} - - -. Jambase.misc.fsys +. misc/Jambase.misc diff --git a/defaults/Jambase.vars b/defaults/Jambase.vars index c3dc55d..006d63e 100644 --- a/defaults/Jambase.vars +++ b/defaults/Jambase.vars @@ -165,7 +165,7 @@ SUFLIBSHR ?= $(SUFLIB) ; # the D compiler -DC ?= dmd ; +#DC ?= dmd ; # # General defaults; a lot like UNIX diff --git a/defaults/Jambase.build.ar b/defaults/build/Jambase.build.ar similarity index 100% rename from defaults/Jambase.build.ar rename to defaults/build/Jambase.build.ar diff --git a/defaults/Jambase.build.as b/defaults/build/Jambase.build.as similarity index 100% rename from defaults/Jambase.build.as rename to defaults/build/Jambase.build.as diff --git a/defaults/Jambase.build.c b/defaults/build/Jambase.build.c similarity index 100% rename from defaults/Jambase.build.c rename to defaults/build/Jambase.build.c diff --git a/defaults/Jambase.build.cpp b/defaults/build/Jambase.build.cpp similarity index 100% rename from defaults/Jambase.build.cpp rename to defaults/build/Jambase.build.cpp diff --git a/defaults/Jambase.build.genfile b/defaults/build/Jambase.build.genfile similarity index 100% rename from defaults/Jambase.build.genfile rename to defaults/build/Jambase.build.genfile diff --git a/defaults/Jambase.build.hdr b/defaults/build/Jambase.build.hdr similarity index 100% rename from defaults/Jambase.build.hdr rename to defaults/build/Jambase.build.hdr diff --git a/defaults/Jambase.build.lex b/defaults/build/Jambase.build.lex similarity index 100% rename from defaults/Jambase.build.lex rename to defaults/build/Jambase.build.lex diff --git a/defaults/Jambase.build.objc b/defaults/build/Jambase.build.objc similarity index 100% rename from defaults/Jambase.build.objc rename to defaults/build/Jambase.build.objc diff --git a/defaults/Jambase.build.yacc b/defaults/build/Jambase.build.yacc similarity index 100% rename from defaults/Jambase.build.yacc rename to defaults/build/Jambase.build.yacc diff --git a/defaults/dc/Jambase.build.dc b/defaults/dc/Jambase.build.dc deleted file mode 100644 index 944d9e2..0000000 --- a/defaults/dc/Jambase.build.dc +++ /dev/null @@ -1,19 +0,0 @@ -# /Dc object : source ; -# -# Compile the file source into object, usin the D compiler $(DC), its -# flags $(DCFLAGS) and $(DOPTIM) -# Called by the @Object rule -# -# Do not call this rule directly, since _object_ and _source_ may have -# have platform-specific file extensions -# -rule Dc { - Depends $(<) : $(>) ; - # Just to clarify here: this sets the per-target DCFLAGS to - # be the current value of (global) DCFLAGS and SUBDIRDCFLAGS. - DCFLAGS on $(<) += $(DCFLAGS) $(SUBDIRDCFLAGS) ; -} - -actions Dc { - $(DC) -c -of$(<) $(DCFLAGS) $(DOPTIM) $(>) -} diff --git a/defaults/Jambase.fix.nix b/defaults/fix/Jambase.fix.nix similarity index 100% rename from defaults/Jambase.fix.nix rename to defaults/fix/Jambase.fix.nix diff --git a/defaults/Jambase.fix.nt b/defaults/fix/Jambase.fix.nt similarity index 100% rename from defaults/Jambase.fix.nt rename to defaults/fix/Jambase.fix.nt diff --git a/defaults/link/Jambase.link.c b/defaults/link/Jambase.link.c new file mode 100644 index 0000000..134a65f --- /dev/null +++ b/defaults/link/Jambase.link.c @@ -0,0 +1,3 @@ +. c/Jambase.link.c +. c/Jambase.link.lib.c +. c/Jambase.link.libso.c diff --git a/defaults/link/Jambase.link.cpp b/defaults/link/Jambase.link.cpp new file mode 100644 index 0000000..e861762 --- /dev/null +++ b/defaults/link/Jambase.link.cpp @@ -0,0 +1,3 @@ +. cpp/Jambase.link.cpp +. cpp/Jambase.link.lib.cpp +. cpp/Jambase.link.libso.cpp diff --git a/defaults/Jambase.link.libs b/defaults/link/Jambase.link.libs similarity index 100% rename from defaults/Jambase.link.libs rename to defaults/link/Jambase.link.libs diff --git a/defaults/Jambase.link.objc b/defaults/link/Jambase.link.objc similarity index 100% rename from defaults/Jambase.link.objc rename to defaults/link/Jambase.link.objc diff --git a/defaults/Jambase.link.c b/defaults/link/c/Jambase.link.c similarity index 100% rename from defaults/Jambase.link.c rename to defaults/link/c/Jambase.link.c diff --git a/defaults/Jambase.link.lib.c b/defaults/link/c/Jambase.link.lib.c similarity index 100% rename from defaults/Jambase.link.lib.c rename to defaults/link/c/Jambase.link.lib.c diff --git a/defaults/Jambase.link.libso.c b/defaults/link/c/Jambase.link.libso.c similarity index 100% rename from defaults/Jambase.link.libso.c rename to defaults/link/c/Jambase.link.libso.c diff --git a/defaults/Jambase.link.cpp b/defaults/link/cpp/Jambase.link.cpp similarity index 100% rename from defaults/Jambase.link.cpp rename to defaults/link/cpp/Jambase.link.cpp diff --git a/defaults/Jambase.link.lib.cpp b/defaults/link/cpp/Jambase.link.lib.cpp similarity index 100% rename from defaults/Jambase.link.lib.cpp rename to defaults/link/cpp/Jambase.link.lib.cpp diff --git a/defaults/Jambase.link.libso.cpp b/defaults/link/cpp/Jambase.link.libso.cpp similarity index 100% rename from defaults/Jambase.link.libso.cpp rename to defaults/link/cpp/Jambase.link.libso.cpp diff --git a/defaults/Jambase.main.c b/defaults/main/Jambase.main.c similarity index 100% rename from defaults/Jambase.main.c rename to defaults/main/Jambase.main.c diff --git a/defaults/Jambase.main.cpp b/defaults/main/Jambase.main.cpp similarity index 100% rename from defaults/Jambase.main.cpp rename to defaults/main/Jambase.main.cpp diff --git a/defaults/Jambase.main.objc b/defaults/main/Jambase.main.objc similarity index 100% rename from defaults/Jambase.main.objc rename to defaults/main/Jambase.main.objc diff --git a/defaults/Jambase.misc b/defaults/misc/Jambase.misc similarity index 99% copy from defaults/Jambase.misc copy to defaults/misc/Jambase.misc index 5ce5ea2..02f9220 100644 --- a/defaults/Jambase.misc +++ b/defaults/misc/Jambase.misc @@ -219,4 +219,4 @@ rule Undefines { } -. Jambase.misc.fsys +. fsys/Jambase.misc.fsys diff --git a/defaults/Jambase.misc.fsys b/defaults/misc/fsys/Jambase.misc.fsys similarity index 100% rename from defaults/Jambase.misc.fsys rename to defaults/misc/fsys/Jambase.misc.fsys -- 2.11.4.GIT