aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--SConscript45
1 files changed, 31 insertions, 14 deletions
diff --git a/SConscript b/SConscript
index a146ad9..fcfa37e 100644
--- a/SConscript
+++ b/SConscript
@@ -5,27 +5,44 @@ Import('env prefix')
env.Append(CPPPATH = 'shared')
-miXed_shared = []
-miXed_shared.extend(glob.glob('shared/common/*.c'))
+miXed_shared = glob.glob('shared/common/*.c')
miXed_shared.extend(Split('shared/unstable/fringe.c shared/unstable/forky.c shared/unstable/fragile.c shared/unstable/loader.c'))
+hammer_shared = glob.glob('shared/hammer/*.c')
+sickle_shared = glob.glob('shared/sickle/*.c')
-hammer_src = []
-hammer_src.extend(miXed_shared)
-hammer_src.extend(glob.glob('shared/hammer/*.c'))
-hammer_src.extend(glob.glob('cyclone/hammer/*.c'))
+hammer_source = glob.glob('cyclone/hammer/*.c')
+hammer_src = [miXed_shared, hammer_shared, hammer_source]
hammer = env.SharedLibrary(target = 'hammer', source = hammer_src)
env.Alias('install', env.Install(os.path.join(prefix, 'extra'), hammer))
+Default(hammer)
-sickle_src = []
-sickle_src.extend(miXed_shared)
-sickle_src.extend(glob.glob('shared/sickle/*.c'))
-sickle_src.extend(glob.glob('cyclone/sickle/*.c'))
+sickle_source = glob.glob('cyclone/sickle/*.c')
+sickle_src = [hammer_shared, miXed_shared, sickle_shared, sickle_source]
sickle = env.SharedLibrary(target = 'sickle', source = sickle_src)
env.Alias('install', env.Install(os.path.join(prefix, 'extra'), sickle))
+Default(sickle)
+for hammer_extra in hammer_source:
+ if (hammer_extra != 'cyclone/hammer/hammer.c'):
+ src = [hammer_extra,miXed_shared,hammer_shared]
+ external = env.SharedLibrary(target = re.sub("\.c$","",os.path.basename(hammer_extra)), source = src)
+ env.Alias('install', env.Install(os.path.join(prefix, 'extra'), external))
+ Default(external)
-env.Alias('install', env.Install(os.path.join(prefix, 'doc/5.reference/'), glob.glob('doc/help/*/*.pd')))
+for sickle_extra in sickle_source:
+ if (sickle_extra != 'cyclone/sickle/sickle.c'):
+ target = re.sub("\.c$","",os.path.basename(sickle_extra)) + "~"
+ src = [sickle_extra,sickle_shared,miXed_shared,hammer_shared]
+ external = env.SharedLibrary(target = target, source = src)
+ env.Alias('install', env.Install(os.path.join(prefix, 'extra'), external))
+ Default(external)
-Default(miXed_shared)
-Default(hammer)
-Default(sickle)
+toxy_src = glob.glob('shared/toxy/*.c')
+for toxy_extra in Split('tot plustot tow widget'):
+ toxy_source = "toxy/" + toxy_extra + ".c"
+ src = [toxy_src,toxy_source,'toxy/widgettype.c',miXed_shared,hammer_shared]
+ external = env.SharedLibrary(toxy_extra, src)
+ env.Alias('install', env.Install(os.path.join(prefix, 'extra'), external))
+ Default(external)
+
+env.Alias('install', env.Install(os.path.join(prefix, 'doc/5.reference/'), glob.glob('doc/help/*/*.pd')))