summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2008-10-20 00:25:32 +0000
committerDavid Robillard <d@drobilla.net>2008-10-20 00:25:32 +0000
commit5e09c3e596c1b0860a996cf8f6023b43d5286a4a (patch)
tree46d989730512fbaa4d72ab7e5da3e88c1e761be9
parent5353b8c88e3c82812e41e3411d1085e0dd481a1b (diff)
downloadingen-5e09c3e596c1b0860a996cf8f6023b43d5286a4a.tar.gz
ingen-5e09c3e596c1b0860a996cf8f6023b43d5286a4a.tar.bz2
ingen-5e09c3e596c1b0860a996cf8f6023b43d5286a4a.zip
Actually use installation location variables for everything.
Add ./waf configure --build which builds a (soon-to-be) relocatable independent bundle with all data/progs/libs in it (OSX bundle directory structure, should be possible to make a 'real' OSX bundle out of this...). Fix include paths to use "" and definitely build against local versions of libraries. git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@1689 a436a847-0d15-0410-975c-d299462d15a1
-rw-r--r--src/client/wscript2
-rw-r--r--src/engine/wscript10
-rw-r--r--src/gui/wscript6
-rw-r--r--src/ingen/wscript1
-rw-r--r--src/module/Module.cpp5
-rw-r--r--src/module/wscript2
-rw-r--r--src/serialisation/wscript2
-rw-r--r--src/shared/wscript1
-rw-r--r--wscript5
9 files changed, 16 insertions, 18 deletions
diff --git a/src/client/wscript b/src/client/wscript
index 614ad7f9..ff3f8254 100644
--- a/src/client/wscript
+++ b/src/client/wscript
@@ -31,7 +31,7 @@ def build(bld):
obj.includes = ['.', '..', '../common']
obj.name = 'libingen_client'
obj.target = 'ingen_client'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
obj.uselib_local = 'libingen_shared'
autowaf.use_lib(bld, obj, 'GLIBMM LV2CORE SLV2 RAUL REDLANDMM SOUP XML2 SIGCPP LIBLO SOUP')
diff --git a/src/engine/wscript b/src/engine/wscript
index 1b677d3e..face717a 100644
--- a/src/engine/wscript
+++ b/src/engine/wscript
@@ -46,7 +46,7 @@ def build(bld):
obj.includes = ['.', '..', '../common', './events']
obj.name = 'libingen_engine'
obj.target = 'ingen_engine'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
obj.uselib_local = 'libingen_shared'
core_libs = 'GLIBMM GTHREAD LV2CORE SLV2 RAUL REDLANDMM'
autowaf.use_lib(bld, obj, core_libs)
@@ -87,7 +87,7 @@ def build(bld):
obj.includes = ['.', '..', '../common', './events', '../engine']
obj.name = 'libingen_engine_queued'
obj.target = 'ingen_engine_queued'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
autowaf.use_lib(bld, obj, core_libs)
if bld.env()['HAVE_SOUP'] == 1:
@@ -96,7 +96,7 @@ def build(bld):
obj.includes = ['.', '..', '../common', './events', '../engine']
obj.name = 'libingen_engine_http'
obj.target = 'ingen_engine_http'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
autowaf.use_lib(bld, obj, core_libs + ' SOUP')
if bld.env()['HAVE_LIBLO'] == 1:
@@ -105,7 +105,7 @@ def build(bld):
obj.includes = ['.', '..', '../common', './events', '../engine']
obj.name = 'libingen_engine_osc'
obj.target = 'ingen_engine_osc'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
autowaf.use_lib(bld, obj, core_libs + ' LIBLO')
if bld.env()['HAVE_JACK'] == 1:
@@ -114,7 +114,7 @@ def build(bld):
obj.includes = ['.', '..', '../common', './events', '../engine']
obj.name = 'libingen_engine_jack'
obj.target = 'ingen_engine_jack'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
autowaf.use_lib(bld, obj, core_libs + ' JACK')
# Lightweight ingen/lv2 wrapper
diff --git a/src/gui/wscript b/src/gui/wscript
index c8615198..62cefaf5 100644
--- a/src/gui/wscript
+++ b/src/gui/wscript
@@ -45,7 +45,7 @@ def build(bld):
obj.includes = ['.', '..', '../common']
obj.name = 'libingen_gui'
obj.target = 'ingen_gui'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
obj.uselib_local = 'libingen_shared'
autowaf.use_lib(bld, obj, '''
CURL
@@ -64,7 +64,7 @@ def build(bld):
''')
# GUI runtime files
- install_files(bld.env()['DATADIR'], 'ingen', 'ingen_gui.glade')
- install_files(bld.env()['DATADIR'], 'ingen', 'ingen.svg')
+ install_files('DATADIR', 'ingen', 'ingen_gui.glade')
+ install_files('DATADIR', 'ingen', 'ingen.svg')
diff --git a/src/ingen/wscript b/src/ingen/wscript
index 0912c74a..ad16dd35 100644
--- a/src/ingen/wscript
+++ b/src/ingen/wscript
@@ -8,5 +8,6 @@ def build(bld):
obj.includes = ['../common', '../']
obj.defines = 'VERSION=\\\"' + bld.env()['INGEN_VERSION'] + '\\\"'
obj.uselib_local = 'libingen_module libingen_shared'
+ obj.inst_dir = bld.env()['BINDIRNAME']
autowaf.use_lib(bld, obj, 'GTHREAD GLIBMM REDLANDMM RAUL LV2CORE SLV2 INGEN LIBLO SOUP')
diff --git a/src/module/Module.cpp b/src/module/Module.cpp
index 16aecb66..2f143443 100644
--- a/src/module/Module.cpp
+++ b/src/module/Module.cpp
@@ -22,10 +22,7 @@
#include <glibmm/miscutils.h>
#include <glibmm/fileutils.h>
#include "raul/SharedPtr.hpp"
-
-#ifndef INGEN_MODULE_DIR
-#error This file expects INGEN_MODULE_DIR to be defined.
-#endif
+#include "config.h"
using namespace std;
diff --git a/src/module/wscript b/src/module/wscript
index b18b39b5..ee6545cc 100644
--- a/src/module/wscript
+++ b/src/module/wscript
@@ -9,10 +9,10 @@ def build(bld):
global.cpp
'''
obj.includes = ['.', '..', '../common']
- obj.defines = 'INGEN_MODULE_DIR=\\\"' + bld.env()['PREFIX'] + 'lib/ingen\\\"'
obj.name = 'libingen_module'
obj.target = 'ingen_module'
obj.vnum = '0.0.0'
obj.uselib_local = 'libingen_shared'
+ obj.inst_dir = bld.env()['LIBDIRNAME']
autowaf.use_lib(bld, obj, 'GLIBMM LV2CORE SLV2 RAUL REDLANDMM')
diff --git a/src/serialisation/wscript b/src/serialisation/wscript
index d1d30a26..b946e7bf 100644
--- a/src/serialisation/wscript
+++ b/src/serialisation/wscript
@@ -12,7 +12,7 @@ def build(bld):
obj.includes = ['.', '..', '../common']
obj.name = 'libingen_serialisation'
obj.target = 'ingen_serialisation'
- obj.inst_dir = 'lib/ingen'
+ obj.inst_dir = bld.env()['LIBDIRNAME'] + 'ingen'
obj.uselib_local = 'libingen_shared'
autowaf.use_lib(bld, obj, 'GLIBMM LV2CORE SLV2 RAUL REDLANDMM')
diff --git a/src/shared/wscript b/src/shared/wscript
index 9820c150..d7512559 100644
--- a/src/shared/wscript
+++ b/src/shared/wscript
@@ -17,5 +17,6 @@ def build(bld):
obj.name = 'libingen_shared'
obj.target = 'ingen_shared'
obj.vnum = '0.0.0'
+ obj.inst_dir = bld.env()['LIBDIRNAME']
autowaf.use_lib(bld, obj, 'GLIBMM LV2CORE SLV2 RAUL REDLANDMM')
diff --git a/wscript b/wscript
index 0570732d..cee783a7 100644
--- a/wscript
+++ b/wscript
@@ -16,8 +16,6 @@ blddir = 'build'
def set_options(opt):
autowaf.set_options(opt)
- opt.tool_options('compiler_cc')
- opt.tool_options('compiler_cxx')
opt.add_option('--data-dir', type='string', dest='datadir',
help="Ingen data install directory [Default: PREFIX/share/ingen]")
opt.add_option('--module-dir', type='string', dest='moduledir',
@@ -56,6 +54,7 @@ def configure(conf):
conf.define('BUILD_GUI', build_gui)
conf.define('HAVE_JACK_MIDI', conf.env['HAVE_JACK'] == 1)
conf.define('INGEN_DATA_DIR', os.path.normpath(conf.env['DATADIR'] + 'ingen'))
+ conf.define('INGEN_MODULE_DIR', os.path.normpath(conf.env['LIBDIR'] + 'ingen'))
conf.write_config_header('config.h')
autowaf.print_summary(conf)
@@ -88,5 +87,5 @@ def build(bld):
# Documentation
autowaf.build_dox(bld, 'INGEN', INGEN_VERSION, srcdir, blddir)
- install_files('PREFIX', 'share/doc/ingen', blddir + '/default/doc/html/*')
+ install_files('HTMLDIR', '', blddir + '/default/doc/html/*')