wscript: Add --libdir and --pkgconfigdir; install .pc files

This commit is contained in:
Nedko Arnaudov 2023-08-06 18:59:54 +03:00
parent 9a54db61b0
commit af2cc90f8f
3 changed files with 45 additions and 10 deletions

View File

@ -1,11 +1,11 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
prefix=@PREFIX@
exec_prefix=@PREFIX@
libdir=@LIBDIR@
includedir=@INCLUDEDIR@
jack_implementation=ladi-jack1
Name: jack
Description: the Jack Audio Connection Kit: a low-latency synchronous callback-based media server
Version: @JACK_VERSION@
Libs: -L${libdir} -ljack -lpthread @OS_LDFLAGS@
Libs: -L${libdir} -l@CLIENTLIB@
Cflags: -I${includedir}

View File

@ -1,11 +1,11 @@
prefix=@prefix@
exec_prefix=@exec_prefix@
libdir=@libdir@
includedir=@includedir@
prefix=@PREFIX@
exec_prefix=@PREFIX@
libdir=@LIBDIR@
includedir=@INCLUDEDIR@
jack_implementation=ladi-jack1
Name: jackserver
Description: JACK server API
Version: @JACK_VERSION@
Libs: -L${libdir} -ljackserver
Libs: -L${libdir} -l@SERVERLIB@
Cflags: -I${includedir}

35
wscript
View File

@ -42,6 +42,9 @@ def options(opt):
opt.set_auto_options_define('HAVE_%s')
opt.set_auto_options_style('yesno_and_hack')
opt.add_option('--libdir', type='string', help='Library directory [Default: <prefix>/lib64]')
opt.add_option('--pkgconfigdir', type='string', help='pkg-config file directory [Default: <libdir>/pkgconfig]')
alsa = opt.add_auto_option(
'alsa',
help='Enable ALSA driver',
@ -88,6 +91,16 @@ def configure(conf):
flags = WafToolchainFlags(conf)
if Options.options.libdir:
conf.env['LIBDIR'] = Options.options.libdir
else:
conf.env['LIBDIR'] = conf.env['PREFIX'] + '/lib64'
if Options.options.pkgconfigdir:
conf.env['PKGCONFDIR'] = Options.options.pkgconfigdir
else:
conf.env['PKGCONFDIR'] = conf.env['LIBDIR'] + '/pkgconfig'
conf.env['JACK_DRIVER_DIR'] = os.path.normpath(
os.path.join(conf.env['PREFIX'],
'libexec',
@ -264,6 +277,17 @@ def build(bld):
"libjack/unlock.c",
]
# process jack.pc.in -> jack.pc
bld(
features='subst_pc',
source='jack.pc.in',
target='jack.pc',
install_path='${PKGCONFDIR}',
JACK_VERSION=VERSION,
INCLUDEDIR=os.path.normpath(bld.env['PREFIX'] + '/include'),
CLIENTLIB=clientlib.target,
)
serverlib = bld(features=['c', 'cshlib'])
serverlib.defines = 'HAVE_CONFIG_H'
serverlib.includes = includes
@ -292,6 +316,17 @@ def build(bld):
'libjack/unlock.c',
]
# process jackserver.pc.in -> jackserver.pc
bld(
features='subst_pc',
source='jackserver.pc.in',
target='jackserver.pc',
install_path='${PKGCONFDIR}',
JACK_VERSION=VERSION,
INCLUDEDIR=os.path.normpath(bld.env['PREFIX'] + '/include'),
SERVERLIB=serverlib.target,
)
obj = bld(features=['c', 'cprogram'])
obj.defines = ['HAVE_CONFIG_H']
obj.use = ['DBUS-1', 'EXPAT', 'M', 'jackserver']