From 4e42925096e97f4a6c9d09f475de7eb54a226668 Mon Sep 17 00:00:00 2001 From: Heiko Becker Date: Thu, 3 Dec 2020 21:04:26 +0100 Subject: [PATCH] Handle absolute sysconfdir when installing symlinks sysconfdir defaults to /etc when the prefix is set to /usr. But joining MESON_INSTALL_DESTDIR_PREFIX and sysconfdir when the latter is an absoulte path, results in sysconfdir only. Which might lead to an error during install because /etc/fonts/conf.d/ might already exist from an pre-existing fontconfig installation. --- conf.d/link_confs.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) --- a/conf.d/link_confs.py +++ b/conf.d/link_confs.py @@ -11,7 +11,14 @@ if __name__=='__main__': parser.add_argument('links', nargs='+') args = parser.parse_args() - confpath = os.path.join(os.environ['MESON_INSTALL_DESTDIR_PREFIX'], args.confpath) + if os.path.isabs(args.confpath): + destdir = os.environ.get('DESTDIR') + if destdir: + confpath = os.path.join(destdir, args.confpath[1:]) + else: + confpath = args.confpath + else: + confpath = os.path.join(os.environ['MESON_INSTALL_DESTDIR_PREFIX'], args.confpath) if not os.path.exists(confpath): os.makedirs(confpath)