Browse Source

Add support for *_src.cxx in Sources.pp

David Rose 24 years ago
parent
commit
740abc7908

+ 2 - 2
dtool/pptempl/Depends.pp

@@ -28,11 +28,11 @@
 Warning: Lib(s) $[nonexisting], referenced in $[DIRNAME]/$[TARGET], not found.
     #endif
 
-    #set DEPENDABLE_HEADERS $[DEPENDABLE_HEADERS] $[filter %.h %.I,$[all_sources]]
+    #set DEPENDABLE_HEADERS $[DEPENDABLE_HEADERS] $[filter %.h %.I %_src.cxx,$[all_sources]]
   #end metalib_target static_lib_target ss_lib_target lib_target noinst_lib_target bin_target noinst_bin_target
 
   #forscopes test_bin_target
-    #set DEPENDABLE_HEADERS $[DEPENDABLE_HEADERS] $[filter %.h %.I,$[all_sources]]
+    #set DEPENDABLE_HEADERS $[DEPENDABLE_HEADERS] $[filter %.h %.I %_src.cxx,$[all_sources]]
   #end test_bin_target
 
   // Allow the user to define additional EXTRA_DEPENDS targets in each

+ 1 - 1
dtool/pptempl/Global.pp

@@ -319,7 +319,7 @@
 #defer get_igatescan \
   $[if $[and $[run_interrogate],$[IGATESCAN]], \
      $[if $[eq $[IGATESCAN], all], \
-      $[filter-out %.I %.T %.lxx %.yxx %.N,$[get_sources]], \
+      $[filter-out %.I %.T %.lxx %.yxx %.N %_src.cxx,$[get_sources]], \
       $[IGATESCAN]]]
 
 // This variable returns the name of the interrogate database file

+ 9 - 9
dtool/pptempl/Template.gmsvc.pp

@@ -54,7 +54,7 @@
     // This library is on a metalib, so we can't build it, but we
     // should build all the obj's that go into it.
     #set deferred_objs $[deferred_objs] \
-      $[patsubst %.c %.cxx %.yxx %.lxx,$[so_dir]/%.obj,%,,$[get_sources] $[get_igateoutput]]
+      $[patsubst %_src.cxx,,%.c %.cxx %.yxx %.lxx,$[so_dir]/%.obj,%,,$[get_sources] $[get_igateoutput]]
   #endif
 #end lib_target
 
@@ -103,8 +103,8 @@
 #endif
 
 // And these are the various source files, extracted out by type.
-#define cxx_so_sources $[filter %.cxx,$[so_sources]]
-#define cxx_st_sources $[filter %.cxx,$[st_sources]]
+#define cxx_so_sources $[filter_out %_src.cxx,$[filter %.cxx,$[so_sources]]]
+#define cxx_st_sources $[filter_out %_src.cxx,$[filter %.cxx,$[st_sources]]]
 #define c_so_sources $[filter %.c,$[so_sources]]
 #define c_st_sources $[filter %.c,$[st_sources]]
 #define yxx_so_sources $[filter %.yxx,$[so_sources]]
@@ -354,8 +354,8 @@ $[directory]/stamp :
   // Now output the rule to actually link the library from all of its
   // various .obj files.
   #define sources \
-   $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[so_dir]/%.obj,%,,$[get_sources] $[igateoutput] $[igatemout]]] \
-   $[components $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[RELDIR]/$[so_dir]/%.obj,%,,$[get_sources] $[get_igateoutput]]],$[active_component_libs]]
+   $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[so_dir]/%.obj,%,,$[get_sources] $[igateoutput] $[igatemout]]] \
+   $[components $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[RELDIR]/$[so_dir]/%.obj,%,,$[get_sources] $[get_igateoutput]]],$[active_component_libs]]
   #define varname $[subst -,_,lib$[TARGET]_so]
 $[varname] = $[sources]
   #define target $[so_dir]/lib$[TARGET]$[dllext].$[dlllib]
@@ -508,7 +508,7 @@ $[target] : $[source] $[so_dir]/stamp
 
 #forscopes noinst_lib_target
 #define varname $[subst -,_,lib$[TARGET]_so]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[so_dir]/%.obj,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[so_dir]/%.obj,%,,$[get_sources]]]
 #define target $[so_dir]/lib$[TARGET]$[dllext].$[dlllib]
 #define sources $($[varname])
 $[target] : $[sources] $[so_dir]/stamp
@@ -537,7 +537,7 @@ $[so_dir]/lib$[TARGET]$[dllext].pdb : $[so_dir]/lib$[TARGET]$[dllext].dll
 
 #forscopes static_lib_target ss_lib_target
 #define varname $[subst -,_,lib$[TARGET]_a]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]/%.obj,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]/%.obj,%,,$[get_sources]]]
 #define target $[st_dir]/lib$[TARGET]$[dllext].lib
 #define sources $($[varname])
 $[target] : $[sources] $[st_dir]/stamp
@@ -613,7 +613,7 @@ $[install_bin_dir]/$[TARGET] : $[st_dir]/$[TARGET] $[st_dir]/stamp
 $[TARGET] : $[st_dir]/$[TARGET].exe $[st_dir]/stamp
 
 #define varname $[subst -,_,bin_$[TARGET]]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]/%.obj,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]/%.obj,%,,$[get_sources]]]
 #define target $[st_dir]/$[TARGET].exe
 #define sources $($[varname])
 #define ld $[get_ld]
@@ -674,7 +674,7 @@ $[install_bin_dir]/$[TARGET].pdb : $[st_dir]/$[TARGET].pdb $[st_dir]/stamp
 $[TARGET] : $[st_dir]/$[TARGET].exe $[st_dir]/stamp
 
 #define varname $[subst -,_,bin_$[TARGET]]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]/%.obj,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]/%.obj,%,,$[get_sources]]]
 #define target $[st_dir]/$[TARGET].exe
 #define sources $($[varname])
 $[target] : $[sources] $[st_dir]/stamp

+ 9 - 9
dtool/pptempl/Template.msvc.pp

@@ -59,7 +59,7 @@
     // This library is on a metalib, so we can't build it, but we
     // should build all the obj's that go into it.
     #set deferred_objs $[deferred_objs] \
-      $[patsubst %.c %.cxx %.yxx %.lxx,$[so_dir]\%.obj,%,,$[get_sources] $[get_igateoutput]]
+      $[patsubst %_src.cxx,,%.c %.cxx %.yxx %.lxx,$[so_dir]\%.obj,%,,$[get_sources] $[get_igateoutput]]
   #endif
 #end lib_target
 
@@ -108,8 +108,8 @@
 #endif
 
 // And these are the various source files, extracted out by type.
-#define cxx_so_sources $[filter %.cxx,$[so_sources]]
-#define cxx_st_sources $[filter %.cxx,$[st_sources]]
+#define cxx_so_sources $[filter_out %_src.cxx,$[filter %.cxx,$[so_sources]]]
+#define cxx_st_sources $[filter_out %_src.cxx,$[filter %.cxx,$[st_sources]]]
 #define c_so_sources $[filter %.c,$[so_sources]]
 #define c_st_sources $[filter %.c,$[st_sources]]
 #define yxx_so_sources $[filter %.yxx,$[so_sources]]
@@ -340,8 +340,8 @@ $[osfilename $[directory]] :
   // Now output the rule to actually link the library from all of its
   // various .obj files.
   #define sources \
-   $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[so_dir]\%.obj,%,,$[get_sources] $[igateoutput] $[igatemout]]] \
-   $[components $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[RELDIR]\$[so_dir]\%.obj,%,,$[get_sources] $[get_igateoutput]]],$[active_component_libs]]
+   $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[so_dir]\%.obj,%,,$[get_sources] $[igateoutput] $[igatemout]]] \
+   $[components $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[RELDIR]\$[so_dir]\%.obj,%,,$[get_sources] $[get_igateoutput]]],$[active_component_libs]]
   #define varname $[subst -,_,lib$[TARGET]_so]
 $[varname] = $[osfilename $[sources]]
   #define target $[so_dir]\lib$[TARGET]$[dllext].$[dlllib]
@@ -479,7 +479,7 @@ $[target] : $[source]
 
 #forscopes noinst_lib_target
 #define varname $[subst -,_,lib$[TARGET]_so]
-$[varname] = $[osfilename $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[so_dir]\%.obj,%,,$[get_sources]]]]
+$[varname] = $[osfilename $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[so_dir]\%.obj,%,,$[get_sources]]]]
 #define target $[so_dir]\lib$[TARGET]$[dllext].$[dlllib]
 #define sources $($[varname])
 $[target] : $[sources]
@@ -508,7 +508,7 @@ $[so_dir]\lib$[TARGET]$[dllext].pdb : $[so_dir]\lib$[TARGET]$[dllext].dll
 
 #forscopes static_lib_target ss_lib_target
 #define varname $[subst -,_,lib$[TARGET]_a]
-$[varname] = $[osfilename $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]\%.obj,%,,$[get_sources]]]]
+$[varname] = $[osfilename $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]\%.obj,%,,$[get_sources]]]]
 #define target $[st_dir]\lib$[TARGET]$[dllext].lib
 #define sources $($[varname])
 $[target] : $[sources]
@@ -583,7 +583,7 @@ $[install_bin_dir]\$[TARGET] : $[st_dir]\$[TARGET]
 $[TARGET] : $[st_dir]\$[TARGET].exe
 
 #define varname $[subst -,_,bin_$[TARGET]]
-$[varname] = $[osfilename $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]\%.obj,%,,$[get_sources]]]]
+$[varname] = $[osfilename $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]\%.obj,%,,$[get_sources]]]]
 #define target $[st_dir]\$[TARGET].exe
 #define sources $($[varname])
 #define ld $[get_ld]
@@ -646,7 +646,7 @@ $[install_bin_dir]\$[TARGET].pdb : $[st_dir]\$[TARGET].pdb
 $[TARGET] : $[st_dir]\$[TARGET].exe
 
 #define varname $[subst -,_,bin_$[TARGET]]
-$[varname] = $[osfilename $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]\%.obj,%,,$[get_sources]]]]
+$[varname] = $[osfilename $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]\%.obj,%,,$[get_sources]]]]
 #define target $[st_dir]\$[TARGET].exe
 #define sources $($[varname])
 $[target] : $[sources]

+ 7 - 7
dtool/pptempl/Template.unix.pp

@@ -76,8 +76,8 @@
 #endif
 
 // And these are the various source files, extracted out by type.
-#define cxx_so_sources $[filter %.cxx,$[so_sources]]
-#define cxx_st_sources $[filter %.cxx,$[st_sources]]
+#define cxx_so_sources $[filter_out %_src.cxx,$[filter %.cxx,$[so_sources]]]
+#define cxx_st_sources $[filter_out %_src.cxx,$[filter %.cxx,$[st_sources]]]
 #define c_so_sources $[filter %.c,$[so_sources]]
 #define c_st_sources $[filter %.c,$[st_sources]]
 #define yxx_so_sources $[filter %.yxx,$[so_sources]]
@@ -295,7 +295,7 @@ $[directory] :
 // Now output the rule to actually link the library from all of its
 // various .o files.
 #define varname $[subst -,_,lib$[TARGET]_so]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[so_dir]/%.o,%,,$[get_sources] $[igateoutput] $[igatemout]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[so_dir]/%.o,%,,$[get_sources] $[igateoutput] $[igatemout]]]
 #define target $[so_dir]/lib$[TARGET].so
 #define sources $($[varname])
 $[target] : $[sources]
@@ -398,7 +398,7 @@ $[target] : $[source]
 
 #forscopes noinst_lib_target
 #define varname $[subst -,_,lib$[TARGET]_so]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[so_dir]/%.o,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[so_dir]/%.o,%,,$[get_sources]]]
 #define target $[so_dir]/lib$[TARGET].so
 #define sources $($[varname])
 $[target] : $[sources]
@@ -420,7 +420,7 @@ $[target] : $[sources]
 
 #forscopes static_lib_target
 #define varname $[subst -,_,lib$[TARGET]_a]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]/%.o,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]/%.o,%,,$[get_sources]]]
 #define target $[st_dir]/lib$[TARGET].a
 #define sources $($[varname])
 $[target] : $[sources]
@@ -499,7 +499,7 @@ $[install_bin_dir]/$[TARGET] : $[st_dir]/$[TARGET]
 $[TARGET] : $[st_dir]/$[TARGET]
 
 #define varname $[subst -,_,bin_$[TARGET]]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]/%.o,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]/%.o,%,,$[get_sources]]]
 #define target $[st_dir]/$[TARGET]
 #define sources $($[varname])
 #define ld $[get_ld]
@@ -548,7 +548,7 @@ $[install_bin_dir]/$[TARGET] : $[st_dir]/$[TARGET]
 $[TARGET] : $[st_dir]/$[TARGET]
 
 #define varname $[subst -,_,bin_$[TARGET]]
-$[varname] = $[unique $[patsubst %.cxx %.c %.yxx %.lxx,$[st_dir]/%.o,%,,$[get_sources]]]
+$[varname] = $[unique $[patsubst %_src.cxx,,%.cxx %.c %.yxx %.lxx,$[st_dir]/%.o,%,,$[get_sources]]]
 #define target $[st_dir]/$[TARGET]
 #define sources $($[varname])
 $[target] : $[sources]