Date: Sat, 7 May 2016 01:35:12 +0200 From: Baptiste Daroussin <bapt@FreeBSD.org> To: pgsql@FreeBSD.org, girgen@FreeBSD.org, ports@FreeBSD.org Subject: coinstallable version of pgsql (POC) Message-ID: <20160506233512.GC84309@ivaldir.etoilebsd.net>
next in thread | raw e-mail | index | archive | help
--JgQwtEuHJzHdouWu Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi all, Apparently noone had time to work on making all the version of pgsql coinstallable since we last talked about it Here is a proof of concept done on pg95 which makes it coinstallable: https://people.freebsd.org/~bapt/pgsql95.diff It is unfinished given I have not enough time for that. Basically it keeps the package split as it is now (PoC done on clients, server, contrib and plperl) for server what remains is renaming the rc.d script all binaries are now installed under lib/postgresql95/bin and a symlink in regular bin suffixed by the version number. the rpath from the default built is disabled and replaced with a new one which ensure the order of the rpath is correct (the default one is not in the right order) which ensure the libpq version found in priority is the the right version. using rpath is good here to avoid adding a ldconfig file which would make other programs accidentally find the non default libpq In order to keep the manpages, in category 1 the manpages have been renamed to match the name of the symlinks in the PATH In the 7 category thet have been suffixed with postgresql${version} so one can really have all the manpages for all clients available and clearly state which one correspond to which version the man3 and pkgconfig has been removed as they belong to the libpq package What is missing: create a new postgresql-libq based on latest pg version which is installed in the default lib directory What I forgot here is to add a BUNDLE_LIBS=yes for the solver never to take in accoung libpq.so.5 from those clients Last thing would be to cleanup Mk/Uses/pgsql.mk to allow parallel installation I really hope you like that approach and that someone will be able to finish it soon. That would be really helpful for users to be able to decide which version of pg they want without having to build their own packages. It will also simplify upgrading as at one point one have tools from all version of postgresql available at once. Best regards, Bapt --JgQwtEuHJzHdouWu Content-Type: application/pgp-signature; name="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQIcBAEBCAAGBQJXLSowAAoJEGOJi9zxtz5aN+UQAIwfSVpGDPlLLPlwRnQwjIoy kJ8ADfzqWAw8A4Y0fMJVfPKqPsZkeFO/pIQ09Nm+YtQhOAwrUkZX03ogY+cFAxJb 9uReQUCB9z2NO8nWFaAJFqEFlCnUOLEzHRY8Vlr5TJ2JVJ/3QlE/uQOSwE3/FnIc Y0S8A9qrLx0zDCLwYZr3kpxm/YXq5WEe5dfvqpNx8Gj6vGiaMPkUxxuYb5oMkQ4w nW9Qpzxs6DGtNKNklxu41iKrzYUHjA+69fYSpqOXzXUeowtpzS08el1dAcMyYYEX 3uszUGGSvqNUMLwJPpuX7gUuxuE66XlCqLKLEYm6/0oL3ecy1ATLnkz/y3t2T15T aaqy5FXAvCdg/4pKkvT8qo++Mu4WnBHk+tUIC6fzwvcDluxynm9ytqfSjHCGR02/ Qol+U9U47gZhrC8O4raxO9a94WcqqngOisvw7UYYNwuwEUzyJ90sIgeIu5mKMGUI 835y7YSRa6F6r6DbYgJg2y75z7wD/wI87kNjj8ROFai/7DcICiYdPXDq+RhvjXBD lmFUvX6IS/5fbJj9l1k6bUrcGLx3CrM7HrgVMGETKmZL8jbuTmEFlSexw5jSaqCz kuTcLygxPYAxZLn9A4U66dzZoF/bIfg+sNqK7yYDoM81MpyF5s+mKXctNgOz5JPV 95IPD14YZ3NzNXshjqOa =M/IX -----END PGP SIGNATURE----- --JgQwtEuHJzHdouWu--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160506233512.GC84309>