Commit graph

25 commits

Author SHA1 Message Date
Mads Kiilerich
a0916ef368 wscript: drop unused APPNAME assignment in libs
https://waf.io/book/ says
  By default, the project name and version are set to noname and 1.0. To
  change them, it is necessary to provide two additional variables in
  the top-level project file

- and waf code inspection confirms that waf itself only will use the top
level APPNAME.

Also, the 'waf dist' comment doesn't seem relevant - especially after
this change - and is removed too.

(Note: libs/evoral/wscript and libs/temporal/wscript still use APPNAME
for other purposes.)
2023-09-17 07:34:55 -06:00
Mads Kiilerich
3b4cf9191c wscript: drop unused VERSION assignment in libs
https://waf.io/book/ says
  By default, the project name and version are set to noname and 1.0. To
  change them, it is necessary to provide two additional variables in the
  top-level project file

- and waf code inspection confirms that waf itself only will use the top
  level VERSION.

Some wscripts will use
  bld.env['VERSION']
but that will also just use the value set in the top wscript.
2023-09-17 07:34:55 -06:00
Mads Kiilerich
7737c17d52 wscript: drop unused imports, scripted
Done with ad hoc scripting hacks processing unused imports found by pyflakes:

for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Logs.* but unused' | cut -d: -f1 | while read f; do sed -i 's/^import waflib.Logs as Logs,/import/g' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i 's/import waflib.Options as Options, /import /g' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i 's/^from waflib import Options,/from waflib import/g' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep ' imported but unused$' | sed "s/^\([^:]*\):[0-9]*:[0-9]* '\(.*\)'.*/\1 \2/g" | while read f lib; do sed -i "/^import $lib$/d" $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Options.* but unused' | cut -d: -f1 | while read f; do sed -i '/from waflib import Options$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.TaskGen.* but unused' | cut -d: -f1 | while read f; do sed -i '/from waflib import TaskGen$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Task.Task.* but unused' | cut -d: -f1 | while read f; do sed -i '/^from waflib.Task import Task$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Tools.winres.* but unused' | cut -d: -f1 | while read f; do sed -i '/^from waflib.Tools import winres$/d' $f; done
for f in $( find * -name wscript ); do echo; pyflakes $f; done | grep 'waflib.Utils.* but unused' | cut -d: -f1 | while read f; do sed -i '/^import waflib.Utils as Utils$/d' $f; done
2023-09-17 07:34:55 -06:00
Mads Kiilerich
49855e52aa wscript: consistently have at most one empty separator line 2022-04-09 12:16:40 +02:00
Mads Kiilerich
6f04dfc774
wscript: detect if qm-dsp is self-contained or need linking with kiss
When building with --use-external-libs on Fedora, Ardour would fail at
runtime with messages like:
  symbol lookup error: .../vamp/libardourvampplugins.so: undefined symbol: kiss_fftr_alloc
Try to automate handling of this error situation.

Fedora packaging worked around it with a custom patch that we rather
would avoid:
https://src.fedoraproject.org/rpms/ardour6/blob/rawhide/f/ardour6-missing-kissfft.patch .
2022-04-08 18:39:15 +02:00
Mads Kiilerich
6ff1d86cad wscript: improve configure messages slightly 2022-01-22 22:19:07 +01:00
Mads Kiilerich
8bb91099c5 wscript: drop configure statements already present in the top level wscript
Avoid repeated pointless configure messages like:
Checking for 'g++' (C++ compiler!)                   : /usr/lib64/ccache/g++
Checking for 'gcc' (C compiler)                      : /usr/lib64/ccache/gcc
2022-01-22 22:19:03 +01:00
Robin Gareus
95f3977f07
Do not install static libs
There is no need to deploy .a with ardour installations.
2020-01-22 02:00:25 +01:00
Robin Gareus
34c4f7b8ee
Fix Ardour VAMP plugins (FFT)
Bug was introduced in 8ed33f1bc7 symbol visibility setting
in CFLAGS, CXXFLAGS was overridden. This resulted in publicly exposed
and bound kiss_fft symbols in libqm-dsp.

At runtime those symbols were resolved using previously bound
symbols in libcodec  (see below) that uses a mismatching implementation
(ardour/qm-dsp uses -Dkiss_fft_scalar=double)

#0  0x00007fffea793d40 in kiss_fftr () at /usr/lib/x86_64-linux-gnu/libcodec2.so.0.8.1
#1  0x00007fffcf4516ab in FFTReal::D::forward(double const*, double*, double*) (this=0x5555571d73a0, ri=0x55555a734810, ro=0x55555a7262b0, io=0x55555a728590)
    at ../libs/qm-dsp/dsp/transforms/FFT.cpp:121
#2  0x00007fffcf4510fd in FFTReal::forward(double const*, double*, double*) (this=0x555559868190, ri=0x55555a734810, ro=0x55555a7262b0, io=0x55555a728590)
    at ../libs/qm-dsp/dsp/transforms/FFT.cpp:186
2020-01-14 00:52:24 +01:00
Paul Davis
8ed33f1bc7 remove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead 2018-10-14 22:06:11 -04:00
Robin Gareus
485e31f082 Build qm-dsp & kissfft as static lib w/hidden symbols
...as precaution for plugins which may potentially use a different
version of the library.
2016-10-07 14:28:36 +02:00
Robin Gareus
2ac7c5d3e2 Document version of bundled qm-dsp library 2016-10-07 03:59:38 +02:00
Robin Gareus
344728551d remove more unused qm-dsp code (fixes windows compile no LAPACK) 2016-10-06 01:54:21 +02:00
Robin Gareus
a543ae329c Thin out qm-dsp code: no threading 2016-10-06 00:58:20 +02:00
Robin Gareus
f68d2e06bc update qm-dsp library 2016-10-06 00:57:53 +02:00
Nils Philippsen
0aaded5318 allow linking unbundled version of qm-dsp
In the course, rename the bundled, built version libqm-dsp so it matches
packaged versions.
2016-10-04 22:03:28 +02:00
Paul Davis
1b989a93c2 remove redundant os.path.join() calls when specifying install path as bld.env['LIBDIR'] 2014-04-28 21:18:02 -04:00
Paul Davis
058986f77b finish unfinished work at basing all install paths on the program name 2014-04-28 21:11:08 -04:00
Paul Davis
31b68d1db8 use "portable" approach to forcing visible symbols in third party libs (qm-dsp, vamp-plugins, appleutility, clearlooks) 2014-01-17 13:19:42 -05:00
Paul Davis
4b3feefa55 add -fvisibility=default back to cxx/cflags when building QM DSP and VAMP plugins libs, because ... ugh 2014-01-12 15:40:48 -05:00
David Robillard
c1ef7b14a3 Remove use of waf compat15 tool.
Always load waf tools first (prevent smashing of --debug, DATADIR, etc).


git-svn-id: svn://localhost/ardour2/branches/3.0@10163 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-29 19:58:05 +00:00
David Robillard
723ab60b39 Upgrade to waf 1.6.7 and autowaf r52.
git-svn-id: svn://localhost/ardour2/branches/3.0@10162 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-09-29 19:17:54 +00:00
David Robillard
4769db412d Fix Python whitespace (follow PEP8 guidelines, reformatted by Python Reindent)
git-svn-id: svn://localhost/ardour2/branches/3.0@9409 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-04-22 22:15:21 +00:00
David Robillard
9850407bd9 Indent python files with spaces as per style guide.
git-svn-id: svn://localhost/ardour2/branches/3.0@9158 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-16 16:32:56 +00:00
Paul Davis
3deba1921b add queen mary DSP library
git-svn-id: svn://localhost/ardour2/branches/3.0@9029 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-03-02 12:37:39 +00:00