diff options
| author | Carl Hetherington <carl@ubuntu-12-10-32.lan> | 2012-12-08 00:04:51 +0000 |
|---|---|---|
| committer | Carl Hetherington <carl@ubuntu-12-10-32.lan> | 2012-12-08 00:04:51 +0000 |
| commit | 208f804424cca01fde7def1d11afe295d564603c (patch) | |
| tree | 61acad7cabaab62efa600d2bc42158c2d297c73d | |
| parent | c09d415cac646bfd3067f359ca454dc5ea3679e5 (diff) | |
Fixes to static linking.
| -rw-r--r-- | src/tools/wscript | 4 | ||||
| -rw-r--r-- | test/wscript | 2 | ||||
| -rw-r--r-- | wscript | 46 |
3 files changed, 30 insertions, 22 deletions
diff --git a/src/tools/wscript b/src/tools/wscript index c8601ad1f..58dfa9544 100644 --- a/src/tools/wscript +++ b/src/tools/wscript @@ -1,7 +1,7 @@ def build(bld): for t in ['makedcp', 'fixlengths', 'servomatic_cli']: obj = bld(features = 'cxx cxxprogram') - obj.uselib = 'BOOST_THREAD DCP' + obj.uselib = 'BOOST_THREAD OPENJPEG DCP AVFORMAT AVFILTER AVCODEC AVUTIL SWSCALE POSTPROC' obj.includes = ['..'] obj.use = ['libdvdomatic'] obj.source = '%s.cc' % t @@ -10,7 +10,7 @@ def build(bld): if not bld.env.DISABLE_GUI: for t in ['dvdomatic', 'servomatic_gui']: obj = bld(features = 'cxx cxxprogram') - obj.uselib = 'DCP' + obj.uselib = 'DCP OPENJPEG AVFORMAT AVFILTER AVCODEC AVUTIL SWSCALE POSTPROC' obj.includes = ['..'] obj.use = ['libdvdomatic', 'libdvdomatic-wx'] obj.source = '%s.cc' % t diff --git a/test/wscript b/test/wscript index 3b809f939..15d5410b3 100644 --- a/test/wscript +++ b/test/wscript @@ -8,7 +8,7 @@ def configure(conf): def build(bld): obj = bld(features = 'cxx cxxprogram') obj.name = 'unit-tests' - obj.uselib = 'BOOST_TEST DCP' + obj.uselib = 'BOOST_TEST DCP OPENJPEG AVFORMAT AVFILTER AVCODEC AVUTIL SWSCALE POSTPROC' obj.use = 'libdvdomatic' obj.source = 'test.cc' obj.target = 'unit-tests' @@ -50,28 +50,36 @@ def configure(conf): else: conf.env.append_value('CXXFLAGS', '-O2') - conf.check_cfg(package = 'libavformat', args = '--cflags --libs', uselib_store = 'AVFORMAT', mandatory = True) - conf.check_cfg(package = 'libavfilter', args = '--cflags --libs', uselib_store = 'AVFILTER', mandatory = True) - conf.check_cfg(package = 'libavcodec', args = '--cflags --libs', uselib_store = 'AVCODEC', mandatory = True) - conf.check_cfg(package = 'libavutil', args = '--cflags --libs', uselib_store = 'AVUTIL', mandatory = True) - conf.check_cfg(package = 'libswscale', args = '--cflags --libs', uselib_store = 'SWSCALE', mandatory = True) - conf.check_cfg(package = 'libswresample', args = '--cflags --libs', uselib_store = 'SWRESAMPLE', mandatory = False) - conf.check_cfg(package = 'libpostproc', args = '--cflags --libs', uselib_store = 'POSTPROC', mandatory = True) - conf.check_cfg(package = 'sndfile', args = '--cflags --libs', uselib_store = 'SNDFILE', mandatory = True) - libdcp_args = '--cflags --libs' + # Arguments to pkg-config for things that we might want to link statically + pkgconfig_args = '--cflags --libs' if conf.options.static: - libdcp_args += ' --static' - conf.check_cfg(package = 'libdcp', atleast_version = '0.33', args = libdcp_args, uselib_store = 'DCP', mandatory = True) + pkgconfig_args += ' --static' + + conf.check_cfg(package = 'libavformat', args = pkgconfig_args, uselib_store = 'AVFORMAT', mandatory = True) + conf.check_cfg(package = 'libavfilter', args = pkgconfig_args, uselib_store = 'AVFILTER', mandatory = True) + conf.check_cfg(package = 'libavcodec', args = pkgconfig_args, uselib_store = 'AVCODEC', mandatory = True) + conf.check_cfg(package = 'libavutil', args = pkgconfig_args, uselib_store = 'AVUTIL', mandatory = True) + conf.check_cfg(package = 'libswscale', args = pkgconfig_args, uselib_store = 'SWSCALE', mandatory = True) + conf.check_cfg(package = 'libswresample', args = pkgconfig_args, uselib_store = 'SWRESAMPLE', mandatory = False) + conf.check_cfg(package = 'libpostproc', args = pkgconfig_args, uselib_store = 'POSTPROC', mandatory = True) + conf.check_cfg(package = 'sndfile', args = '--cflags --libs', uselib_store = 'SNDFILE', mandatory = True) + conf.check_cfg(package = 'libdcp', atleast_version = '0.33', args = pkgconfig_args, uselib_store = 'DCP', mandatory = True) conf.check_cfg(package = 'glib-2.0', args = '--cflags --libs', uselib_store = 'GLIB', mandatory = True) conf.check_cfg(package = '', path = 'Magick++-config', args = '--cppflags --cxxflags --libs', uselib_store = 'MAGICK', mandatory = True) - conf.check_cc(fragment = """ - #include <stdio.h>\n - #include <openjpeg.h>\n - int main () {\n - void* p = (void *) opj_image_create;\n - return 0;\n - } - """, msg = 'Checking for library openjpeg', lib = 'openjpeg', uselib_store = 'OPENJPEG') + + openjpeg_fragment = """ + #include <stdio.h>\n + #include <openjpeg.h>\n + int main () {\n + void* p = (void *) opj_image_create;\n + return 0;\n + } + """ + + if conf.options.static: + conf.check_cc(fragment = openjpeg_fragment, msg = 'Checking for library openjpeg', stlib = 'openjpeg', uselib_store = 'OPENJPEG') + else: + conf.check_cc(fragment = openjpeg_fragment, msg = 'Checking for library openjpeg', lib = 'openjpeg', uselib_store = 'OPENJPEG') conf.check_cc(fragment = """ #include <libssh/libssh.h>\n |
