diff options
author | Akemi <der.richter@gmx.de> | 2018-07-01 21:09:45 +0200 |
---|---|---|
committer | Jan Ekström <jeebjp@gmail.com> | 2018-07-12 01:48:10 +0300 |
commit | 5e608fc4c850d6210ca543d4ed7265c5eee68bc5 (patch) | |
tree | 89f9801d78fa50eac10a14f02caf64c414cc577b | |
parent | 546f038ded9427d4bc1e3ea24103f6a8c2783b68 (diff) |
build: utilize built-in gnu_dirs module for installation directories
This started breaking with newer (2.0.x) waf versions, and it was
noticed that a built-in waf module was providing very similar
functionality.
APPNAME definition was required to have `gnu_dirs`' PACKAGE
variable to be defined in order to have f.ex. documentation
installed to the correct directory.
Currently unused options added by `gnu_dirs` were removed to clean
up the output of the help command.
Effective changes to behavior:
- `gnu_dirs` will attempt to figure out if it needs to use lib64
instead of lib within your installation prefix. If you would
like it to not do that, set `--libdir` during configuration.
The way it tries to figure lib/lib64 out is if there's a
`/usr/lib64` and no `/usr/lib32`.
- `--incdir` is now `--includedir` as per standard `gnu_dirs`
behavior.
-rw-r--r-- | wscript | 33 | ||||
-rw-r--r-- | wscript_build.py | 4 |
2 files changed, 22 insertions, 15 deletions
@@ -12,6 +12,8 @@ from waftools.checks.custom import * c_preproc.go_absolute=True # enable system folders c_preproc.standard_includes.append('/usr/local/include') +APPNAME = 'mpv' + """ Dependency identifiers (for win32 vs. Unix): wscript / C source meaning @@ -916,18 +918,8 @@ standalone_features = [ ] _INSTALL_DIRS_LIST = [ - ('bindir', '${PREFIX}/bin', 'binary files'), - ('libdir', '${PREFIX}/lib', 'library files'), - ('confdir', '${PREFIX}/etc/mpv', 'configuration files'), - - ('incdir', '${PREFIX}/include', 'include files'), - - ('datadir', '${PREFIX}/share', 'data files'), - ('mandir', '${DATADIR}/man', 'man pages '), - ('docdir', '${DATADIR}/doc/mpv', 'documentation files'), - ('htmldir', '${DOCDIR}', 'html documentation files'), + ('confdir', '${SYSCONFDIR}/mpv', 'configuration files'), ('zshdir', '${DATADIR}/zsh/site-functions', 'zsh completion functions'), - ('confloaddir', '${CONFDIR}', 'configuration files load directory'), ] @@ -935,16 +927,30 @@ def options(opt): opt.load('compiler_c') opt.load('waf_customizations') opt.load('features') + opt.load('gnu_dirs') - group = opt.get_option_group("build and install options") + #remove unused options from gnu_dirs + opt.parser.remove_option("--sbindir") + opt.parser.remove_option("--libexecdir") + opt.parser.remove_option("--sharedstatedir") + opt.parser.remove_option("--localstatedir") + opt.parser.remove_option("--oldincludedir") + opt.parser.remove_option("--infodir") + opt.parser.remove_option("--localedir") + opt.parser.remove_option("--dvidir") + opt.parser.remove_option("--pdfdir") + opt.parser.remove_option("--psdir") + + group = opt.get_option_group("Installation directories") for ident, default, desc in _INSTALL_DIRS_LIST: group.add_option('--{0}'.format(ident), type = 'string', dest = ident, default = default, help = 'directory for installing {0} [{1}]' \ - .format(desc, default)) + .format(desc, default.replace('${','').replace('}',''))) + group = opt.get_option_group("build and install options") group.add_option('--variant', default = '', help = 'variant name for saving configuration and build results') @@ -1005,6 +1011,7 @@ def configure(ctx): ctx.load('detections.compiler_swift') ctx.load('detections.compiler') ctx.load('detections.devices') + ctx.load('gnu_dirs') for ident, _, _ in _INSTALL_DIRS_LIST: varname = ident.upper() diff --git a/wscript_build.py b/wscript_build.py index 89eaa48137..8e948ba333 100644 --- a/wscript_build.py +++ b/wscript_build.py @@ -693,7 +693,7 @@ def build(ctx): features = 'subst', PREFIX = ctx.env.PREFIX, LIBDIR = ctx.env.LIBDIR, - INCDIR = ctx.env.INCDIR, + INCDIR = ctx.env.INCLUDEDIR, VERSION = libversion, PRIV_LIBS = get_deps(), ) @@ -701,7 +701,7 @@ def build(ctx): headers = ["client.h", "qthelper.hpp", "opengl_cb.h", "render.h", "render_gl.h", "stream_cb.h"] for f in headers: - ctx.install_as(ctx.env.INCDIR + '/mpv/' + f, 'libmpv/' + f) + ctx.install_as(ctx.env.INCLUDEDIR + '/mpv/' + f, 'libmpv/' + f) ctx.install_as(ctx.env.LIBDIR + '/pkgconfig/mpv.pc', 'libmpv/mpv.pc') |