aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--VERSION2
-rw-r--r--meson.build61
-rw-r--r--meson/arm-linux-gnueabihf2
-rw-r--r--meson/i686-linux-gnu4
-rw-r--r--meson/i686-w64-mingw323
-rw-r--r--meson/universal-apple-darwin3
-rw-r--r--meson/x86_64-linux-gnu3
-rw-r--r--meson/x86_64-w64-mingw323
8 files changed, 58 insertions, 23 deletions
diff --git a/VERSION b/VERSION
index 8e8db4a..44b1e8e 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-0.17.107
+0.17.109
diff --git a/meson.build b/meson.build
index 607c865..dd2913c 100644
--- a/meson.build
+++ b/meson.build
@@ -6,14 +6,17 @@ project('sherlock.lv2', 'c', default_options : [
'c_std=c11'])
add_project_arguments('-D_GNU_SOURCE', language : 'c')
+add_project_arguments('-DPUGL_HAVE_GL', language : 'c')
conf_data = configuration_data()
cc = meson.get_compiler('c')
m_dep = cc.find_library('m')
lv2_dep = dependency('lv2', version : '>=1.14.0')
-gl_dep = dependency('gl')
-sratom_dep = dependency('sratom-0', version : '>=0.6.0')
+sratom_dep = dependency('sratom-0', version : '>=0.6.0', static : true)
+
+dsp_deps = [m_dep, lv2_dep]
+ui_deps = [m_dep, lv2_dep, sratom_dep]
pugl_inc = include_directories('pugl')
props_inc = include_directories('props.lv2')
@@ -31,6 +34,42 @@ conf_data.set('MICRO_VERSION', version[2])
add_project_arguments('-DSHERLOCK_VERSION="'+rawvers+'"', language : 'c')
+flex = find_program('flex')
+
+lgen = generator(flex,
+ output : '@PLAINNAME@.c',
+ arguments : ['--prefix=enc', '-o', '@OUTPUT@', '@INPUT@'])
+
+lfiles = lgen.process('encoder.l')
+
+ui_srcs = ['sherlock_nk.c',
+ 'atom_inspector_nk.c',
+ 'midi_inspector_nk.c',
+ 'osc_inspector_nk.c',
+ lfiles]
+
+if host_machine.system() == 'linux'
+ conf_data.set('UI_TYPE', 'X11UI')
+ ui_deps += dependency('gl')
+ ui_deps += dependency('x11', version : '>=1.6.0')
+ ui_deps += dependency('xext', version : '>=1.3.0')
+ ui_srcs += 'pugl/pugl/pugl_x11.c'
+elif host_machine.system() == 'windows'
+ add_languages('cpp')
+ conf_data.set('UI_TYPE', 'WindowsUI')
+ ui_deps += cc.find_library('opengl32')
+ ui_deps += cc.find_library('gdi32')
+ ui_deps += cc.find_library('user32')
+ ui_srcs += 'pugl/pugl/pugl_win.cpp'
+elif host_machine.system() == 'darwin'
+ #add_languages('objc')
+ conf_data.set('UI_TYPE', 'CocoaUI')
+ ui_deps += cc.find_library('Cocoa')
+ #ui_deps += cc.find_library('gl')
+ #ui_deps += dependency('appleframeworks', modules : 'cocoa')
+ ui_srcs += 'pugl/pugl/pugl_osx.m'
+endif
+
mod = shared_module('sherlock',
'sherlock.c',
'atom_inspector.c',
@@ -39,33 +78,21 @@ mod = shared_module('sherlock',
c_args : ['-fvisibility=hidden', '-ffast-math'],
include_directories : inc_dir,
name_prefix : '',
- dependencies : [m_dep, lv2_dep],
+ dependencies : dsp_deps,
install : true,
install_dir : inst_dir)
-ui = shared_module('sherlock_ui',
- 'sherlock_nk.c',
- 'atom_inspector_nk.c',
- 'midi_inspector_nk.c',
- 'osc_inspector_nk.c',
+ui = shared_module('sherlock_ui', ui_srcs,
c_args : ['-fvisibility=hidden', '-ffast-math'],
include_directories : inc_dir,
name_prefix : '',
- dependencies : [m_dep, lv2_dep, gl_dep, sratom_dep],
+ dependencies : ui_deps,
install : true,
install_dir : inst_dir)
suffix = mod.full_path().strip().split('.')[-1]
conf_data.set('MODULE_SUFFIX', '.' + suffix)
-if host_machine.system() == 'linux'
- conf_data.set('UI_TYPE', 'X11UI')
-elif host_machine.system() == 'windows'
- conf_data.set('UI_TYPE', 'WindowsUI')
-elif host_machine.system() == 'windows'
- conf_data.set('UI_TYPE', 'CocoaUI')
-endif
-
configure_file(input : 'manifest.ttl.in', output : 'manifest.ttl',
configuration : conf_data,
install : true,
diff --git a/meson/arm-linux-gnueabihf b/meson/arm-linux-gnueabihf
index cb87ad9..6d0ea7b 100644
--- a/meson/arm-linux-gnueabihf
+++ b/meson/arm-linux-gnueabihf
@@ -13,4 +13,6 @@ pkgconfig = '/usr/bin/pkg-config'
exe_wrapper = '/usr/bin/qemu-arm'
[properties]
+root = '/usr/arm-linux-gnueabihf'
+c_link_args = ['-Wl,-z,defs']
needs_exe_wrapper = true
diff --git a/meson/i686-linux-gnu b/meson/i686-linux-gnu
index 35ea0c9..ff653c6 100644
--- a/meson/i686-linux-gnu
+++ b/meson/i686-linux-gnu
@@ -6,12 +6,12 @@ endian = 'little'
[binaries]
c = '/usr/bin/x86_64-linux-gnu-gcc'
-cpp = '/usr/bin/x86_64-linux-gnu-cpp'
+cpp = '/usr/bin/x86_64-linux-gnu-g++'
ar = '/usr/bin/x86_64-linux-gnu-ar'
strip = '/usr/bin/x86_64-linux-gnu-strip'
pkgconfig = '/usr/bin/pkg-config'
[properties]
c_args = ['-m32']
-c_link_args = ['-m32']
+c_link_args = ['-m32', '-Wl,-z,defs']
needs_exe_wrapper = false
diff --git a/meson/i686-w64-mingw32 b/meson/i686-w64-mingw32
index a1fda3f..3cb44ac 100644
--- a/meson/i686-w64-mingw32
+++ b/meson/i686-w64-mingw32
@@ -6,11 +6,12 @@ endian = 'little'
[binaries]
c = '/usr/bin/i686-w64-mingw32-gcc'
-cpp = '/usr/bin/i686-w64-mingw32-cpp'
+cpp = '/usr/bin/i686-w64-mingw32-c++'
ar = '/usr/bin/i686-w64-mingw32-ar'
strip = '/usr/bin/i686-w64-mingw32-strip'
pkgconfig = '/usr/bin/pkg-config'
exe_wrapper = '/usr/bin/wine'
[properties]
+root = '/usr/i686-w64-mingw32'
needs_exe_wrapper = true
diff --git a/meson/universal-apple-darwin b/meson/universal-apple-darwin
index 8dadf28..0ee2e02 100644
--- a/meson/universal-apple-darwin
+++ b/meson/universal-apple-darwin
@@ -6,11 +6,14 @@ endian = 'little'
[binaries]
c = '/usr/universal-apple-darwin/bin/x86_64-apple-darwin15-clang'
+cpp = '/usr/universal-apple-darwin/bin/x86_64-apple-darwin15-clang++'
+objc = '/usr/universal-apple-darwin/bin/x86_64-apple-darwin15-clang'
ar = '/usr/universal-apple-darwin/bin/x86_64-apple-darwin15-ar'
strip = '/usr/universal-apple-darwin/bin/x86_64-apple-darwin15-strip'
pkgconfig = '/usr/bin/pkg-config'
[properties]
+root = '/usr/universal-apple-darwin/SDK/MacOSX10.11.sdk'
c_args = ['-arch', 'i386', '-arch', 'x86_64']
c_link_args = ['-arch', 'i386', '-arch', 'x86_64']
needs_exe_wrapper = true
diff --git a/meson/x86_64-linux-gnu b/meson/x86_64-linux-gnu
index 0225bb9..b09321c 100644
--- a/meson/x86_64-linux-gnu
+++ b/meson/x86_64-linux-gnu
@@ -6,10 +6,11 @@ endian = 'little'
[binaries]
c = '/usr/bin/x86_64-linux-gnu-gcc'
-cpp = '/usr/bin/x86_64-linux-gnu-cpp'
+cpp = '/usr/bin/x86_64-linux-gnu-g++'
ar = '/usr/bin/x86_64-linux-gnu-ar'
strip = '/usr/bin/x86_64-linux-gnu-strip'
pkgconfig = '/usr/bin/pkg-config'
[properties]
+c_link_args = ['-Wl,-z,defs']
needs_exe_wrapper = false
diff --git a/meson/x86_64-w64-mingw32 b/meson/x86_64-w64-mingw32
index 4094990..77dd3a5 100644
--- a/meson/x86_64-w64-mingw32
+++ b/meson/x86_64-w64-mingw32
@@ -6,11 +6,12 @@ endian = 'little'
[binaries]
c = '/usr/bin/x86_64-w64-mingw32-gcc'
-cpp = '/usr/bin/x86_64-w64-mingw32-cpp'
+cpp = '/usr/bin/x86_64-w64-mingw32-c++'
ar = '/usr/bin/x86_64-w64-mingw32-ar'
strip = '/usr/bin/x86_64-w64-mingw32-strip'
pkgconfig = '/usr/bin/pkg-config'
exe_wrapper = '/usr/bin/wine64'
[properties]
+root = '/usr/x86_64-w64-mingw32'
needs_exe_wrapper = true