Browse Source

compute static_lib_targets correctly to fix build break with 'make all'

David Rose 23 years ago
parent
commit
d13be4daee
1 changed files with 2 additions and 9 deletions
  1. 2 9
      dtool/pptempl/Template.gmsvc.pp

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

@@ -57,15 +57,8 @@
   // $[bin_targets] the list of binaries.  $[test_bin_targets] is the
   // $[bin_targets] the list of binaries.  $[test_bin_targets] is the
   // list of binaries that are to be built only when specifically asked for.
   // list of binaries that are to be built only when specifically asked for.
 
 
-  // #set requires pre-existing vars
-  #define lib_targets
-  #define static_lib_targets
-
-  #forscopes lib_target noinst_lib_target test_lib_target
-    // get_dllname() needs to be evaluated in its lib's scope, but we need to build a global list, so use #set
-    #set lib_targets $[patsubst %,$[ODIR]/$[get_dllname %].$[dlllib],$[active_target(metalib_target noinst_lib_target test_lib_target)] $[real_lib_targets]]
-    #set static_lib_targets $[active_target(static_lib_target ss_lib_target):%=$[ODIR]/$[get_dllname %].lib]
-  #end lib_target noinst_lib_target test_lib_target
+  #define lib_targets $[forscopes metalib_target noinst_lib_target test_lib_target,$[if $[build_target],$[ODIR]/$[get_dllname $[TARGET]].$[dlllib]]] $[real_lib_targets]
+  #define static_lib_targets $[forscopes static_lib_target ss_lib_target,$[if $[build_target],$[ODIR]/$[get_dllname $[TARGET]].lib]]
 
 
   #define bin_targets \
   #define bin_targets \
       $[active_target(bin_target noinst_bin_target):%=$[ODIR]/%.exe] \
       $[active_target(bin_target noinst_bin_target):%=$[ODIR]/%.exe] \