diff options
author | heracles <heracles@localhost> | 2007-10-09 19:23:20 +0000 |
---|---|---|
committer | heracles <heracles@localhost> | 2007-10-09 19:23:20 +0000 |
commit | 44d8bd38fcb1b6f2394000d04522fe4fcfa3693f (patch) | |
tree | aa0885d2950ef2c40f9e35371d2d9a19f6c06bf1 | |
parent | dev-db/postgresql-client-8.3_beta1: first cut on 8.3beta1 (diff) | |
download | experimental-44d8bd38fcb1b6f2394000d04522fe4fcfa3693f.tar.gz experimental-44d8bd38fcb1b6f2394000d04522fe4fcfa3693f.tar.bz2 experimental-44d8bd38fcb1b6f2394000d04522fe4fcfa3693f.zip |
dev-db/postgresql-server-8.3_beta1: first cut on 8.3bet1
WIP: emerge with test feature on fails saying
invalid binary "/var/tmp/portage/dev-db/postgresql-server-8.3_beta1/work/postgresql-8.3beta1/src/test/regress/pg_regress"
which is somewhat weird, because `ebuild postgres-server-8.3_beta1.ebuild test`
works fine. I'll look into it later.
svn path=/experimental/; revision=294
8 files changed, 613 insertions, 12 deletions
diff --git a/dev-db/postgresql-server/Manifest b/dev-db/postgresql-server/Manifest index 9ce3f7c..a1fec2c 100644 --- a/dev-db/postgresql-server/Manifest +++ b/dev-db/postgresql-server/Manifest @@ -82,6 +82,18 @@ AUX postgresql-8.2-server.patch 2536 RMD160 af1858e18d1732818a16ed6c030f1e283c6e MD5 76cea8ec5e54314453d44cda62217653 files/postgresql-8.2-server.patch 2536 RMD160 af1858e18d1732818a16ed6c030f1e283c6eb4e5 files/postgresql-8.2-server.patch 2536 SHA256 b7e9c4e993992b7677c38f2860de805547bc7b384089a4f75b3ece28298eb0a8 files/postgresql-8.2-server.patch 2536 +AUX postgresql-8.3-common.patch 1930 RMD160 938a4df3e592fb95683ed35efa3ba91d72424ef0 SHA1 2365d9ba190a73f223fb77ebd90cd71dcff147ed SHA256 30aa24dd4016ae51f8003928cc96fc00c7abc36302195b2e2e454b4dda4b06bb +MD5 ca57645c7e7903cb6f8db93392ecca23 files/postgresql-8.3-common.patch 1930 +RMD160 938a4df3e592fb95683ed35efa3ba91d72424ef0 files/postgresql-8.3-common.patch 1930 +SHA256 30aa24dd4016ae51f8003928cc96fc00c7abc36302195b2e2e454b4dda4b06bb files/postgresql-8.3-common.patch 1930 +AUX postgresql-8.3-regress.patch 1894 RMD160 40f7611969cd07b4d64aa29eb5453dfbbcfd72a6 SHA1 38993dc51fdbf2063c66888bde9db28456de0ec3 SHA256 874d9aec37e4950608e8e23fbc8a7982d8e7c020c84e308d1755d485c99e2029 +MD5 da505f45b12f91c87bfa6f4abc7fd83b files/postgresql-8.3-regress.patch 1894 +RMD160 40f7611969cd07b4d64aa29eb5453dfbbcfd72a6 files/postgresql-8.3-regress.patch 1894 +SHA256 874d9aec37e4950608e8e23fbc8a7982d8e7c020c84e308d1755d485c99e2029 files/postgresql-8.3-regress.patch 1894 +AUX postgresql-8.3-server.patch 3554 RMD160 0b9e9f855635fa71cdf83ee80f34295a8b5b2eb0 SHA1 5e472e2d2136a61932ec0912ac3c42de93951c18 SHA256 d724c730cbe334ebe9395e38ae07fe3ff87a0b33dc7821526e44ba9618e104e8 +MD5 0a5239a29e2e189b641c465d1efd82a9 files/postgresql-8.3-server.patch 3554 +RMD160 0b9e9f855635fa71cdf83ee80f34295a8b5b2eb0 files/postgresql-8.3-server.patch 3554 +SHA256 d724c730cbe334ebe9395e38ae07fe3ff87a0b33dc7821526e44ba9618e104e8 files/postgresql-8.3-server.patch 3554 AUX postgresql.conf-7.3 1515 RMD160 d2a5175d176bb1039a195c61762464769e86266a SHA1 7b33b242c5aa39bb56917b216aa7495c8cb3d100 SHA256 9e93fe9780bea82c9ef31f311cb556737aa940f749edf3d2a7f8dc36e12e93a4 MD5 e2d90b6770bd37663fec2e1e3146a859 files/postgresql.conf-7.3 1515 RMD160 d2a5175d176bb1039a195c61762464769e86266a files/postgresql.conf-7.3 1515 @@ -102,6 +114,10 @@ AUX postgresql.conf-8.2 1515 RMD160 75df0bf679f1e79c32914819151c597a5648210d SHA MD5 a2e1ff832a0dc8e86485bf7f7b279092 files/postgresql.conf-8.2 1515 RMD160 75df0bf679f1e79c32914819151c597a5648210d files/postgresql.conf-8.2 1515 SHA256 a3d2cfa6d5c81db3657f35a61be35fbd7fbc2829274e138ac2644a495fd3ad82 files/postgresql.conf-8.2 1515 +AUX postgresql.conf-8.3 1515 RMD160 bc3f75cfc9085b45daea522ce0d8c970c3c60ef5 SHA1 068af62cfc6ae21699d541152230ec0ac06d38e3 SHA256 ebbc5f2a5ed4c9911300d08b258677b3e8952fb784a68046a054f9bd04b74297 +MD5 178cc726cc819a09767820346b7c7616 files/postgresql.conf-8.3 1515 +RMD160 bc3f75cfc9085b45daea522ce0d8c970c3c60ef5 files/postgresql.conf-8.3 1515 +SHA256 ebbc5f2a5ed4c9911300d08b258677b3e8952fb784a68046a054f9bd04b74297 files/postgresql.conf-8.3 1515 AUX postgresql.init-7.3 1574 RMD160 96132dcb711eeff955cd675094ebaa498992c88e SHA1 6df2d666ce65082b5dbfa3acabdf31b7cd27cc97 SHA256 d9838db05996696fceab71b3027aac7d22ed951f20039d6cdfc5f5384ad5f103 MD5 5a9b4f822ec64baf8d1de82ba2cb7423 files/postgresql.init-7.3 1574 RMD160 96132dcb711eeff955cd675094ebaa498992c88e files/postgresql.init-7.3 1574 @@ -122,21 +138,28 @@ AUX postgresql.init-8.2 1574 RMD160 d498118cc84403ad6041bd0dba4819ab4792164d SHA MD5 2e2c2bbcbf7022f2735327176958dd7c files/postgresql.init-8.2 1574 RMD160 d498118cc84403ad6041bd0dba4819ab4792164d files/postgresql.init-8.2 1574 SHA256 0f2cbfb519a9f0c7fda4178fc2f74fb0e3409177e2fbbb159c493a070ff275ad files/postgresql.init-8.2 1574 +AUX postgresql.init-8.3 1574 RMD160 36441e4742f7b2af7178ac9b4e62cdf8c7f35446 SHA1 536a0fae273e595bff664abf67f01217f60ee4b7 SHA256 a584384a8e041668b3162be21da7894f16e35c07845122b31d6709b6dcdb4f2b +MD5 6d194d6ecdca9e283135929aeb2bb884 files/postgresql.init-8.3 1574 +RMD160 36441e4742f7b2af7178ac9b4e62cdf8c7f35446 files/postgresql.init-8.3 1574 +SHA256 a584384a8e041668b3162be21da7894f16e35c07845122b31d6709b6dcdb4f2b files/postgresql.init-8.3 1574 DIST postgresql-base-7.3.20.tar.bz2 5711312 RMD160 1230e544979d7d22352ef66741568190e1ee533d SHA1 b60eb82bc7728a54b9766ac862410c43aa5299cf SHA256 009695d3c04004c7ba6365b112dee0cad6738daa2550fdb37c2adab52994e636 DIST postgresql-base-7.4.18.tar.bz2 6662169 RMD160 b7f788ca7cd66032fb73f82259efcb4e12e8f3c5 SHA1 a2038811ca0d6daf0ce024976cc7bbbff8321bfb SHA256 0eff5ab743db9d413b5fe95a2ee907e86b1d32ce3727011ee5c308c0dc7db0af DIST postgresql-base-8.0.14.tar.bz2 7907547 RMD160 4e1c627af447ef24ec343baa3121edd2427d9fa9 SHA1 55880d8e398faffb4a88e808a3dca2cef77b1b79 SHA256 8201ce5a99051c2b561f4b58ce07f17fe4959383ef38afcb25ab802119f9755e DIST postgresql-base-8.1.10.tar.bz2 8110015 RMD160 473e1c66ccc9d4ec47b01b03dff7951749afc785 SHA1 6d4c53d9946386d44f6ee33a9f76d92e00fc1f9c SHA256 c49b8b094838024ef09d1e574181c409dbc3bb13c8470ae495e74a0185aed981 DIST postgresql-base-8.2.5.tar.bz2 8602348 RMD160 784924608f8bad40d079b3f54a75d98ea302ac34 SHA1 437b5e0144485be16557cbb3d48102063e7df69d SHA256 b70a2cc0d0613944ce0eae99c1001894354b77e81c8ae45f6c8c890709861929 +DIST postgresql-base-8.3beta1.tar.bz2 9496130 RMD160 bbc1250cc901124c4eec5c2b4cc5b2dbb3acf7b6 SHA1 bca05623cb23cd7fe9ee775f53a0a0925a658966 SHA256 fd2777dadfb6699df83cbdc26388f2d7e9a95680a0a4db3f7d35ea96d7244d2c DIST postgresql-opt-7.3.20.tar.bz2 344312 RMD160 f3f4723a7dd28e2d961d67d06db5de6978d0e9b9 SHA1 9feeef2b8a250b1cc29b75e372758566c67cb444 SHA256 050c79c87d9dbf443fbda20b0f8fd40523231c2c6bcf1a24808214fe599f4d17 DIST postgresql-opt-7.4.18.tar.bz2 334631 RMD160 ee734caaee206e178aebd71ec20d0506777b1f43 SHA1 cec201bbddbd8df69ff48d454f6cd852b900bfe6 SHA256 63b9ce09e66a90267d70ab766cb6dc833cafa93f52253fe83699b8fce39a9a88 DIST postgresql-opt-8.0.14.tar.bz2 134706 RMD160 ff8773b373aa33f6c43f2d7cc3a56b4484197fc7 SHA1 359127fba3130e46309b24f019eea0fb278ea033 SHA256 b097922bb346c039dc605b45927dca2916394d587000d5412b30c9ca5a1c117a DIST postgresql-opt-8.1.10.tar.bz2 144584 RMD160 fd9f11216465513494320b43fe27614c01b98e98 SHA1 d316b1a3b2a8f766ecf871537cf5d8067232a978 SHA256 9c99a8c31515107e29201e2ba1c5362871851b54bcf6bb9a5d3f81848196834f DIST postgresql-opt-8.2.5.tar.bz2 167549 RMD160 92f6ee646eaf0268ee165fd592013cc3acaee5ca SHA1 bc1bf7528033bc17ae4e93ed071dd2b40bd19f94 SHA256 0d64c3fd4fb097126d9cb7d599fbd86435f23d887f7985c9fdb441db4e3c9ae5 +DIST postgresql-opt-8.3beta1.tar.bz2 178035 RMD160 405eb92402c8b3013adb72329fe27f4cfc1fc607 SHA1 65f5973c381f64966b8011d315410ad732825e13 SHA256 35f808b7d058ceedc26f297ec312f01354a062224324815ae8c082f7e98995a0 DIST postgresql-test-7.3.20.tar.bz2 869518 RMD160 e5cc3a2a96ee3ca4ea0315960bc1712aa0508e9f SHA1 ad79da5533b99ad99f83b405fbc83d84d365cd37 SHA256 05648eda34c9a4670e5afa3fb6dad7bdf0ce69ffa633b8a83cd424de942562d7 DIST postgresql-test-7.4.18.tar.bz2 894754 RMD160 5d198fce6696645b0475d363f6c1a63f143c7341 SHA1 b7fa209f348f202186f472eee72fe3f90b77f7dc SHA256 8c475490a5b8233efb936e11fcb2f02ab10324b35920d310561ba14b1c8268d3 DIST postgresql-test-8.0.14.tar.bz2 935168 RMD160 109af78285a2309210a88cc270ca10264d1b5d39 SHA1 9ea2a05bd25ecbcfc0443424d60fe31b9e5bf121 SHA256 a228576902ea273aff6ee1f7bd7e4bd5d5b6d0b9bbb532aec1c83d5a6beb5a6e DIST postgresql-test-8.1.10.tar.bz2 948352 RMD160 8c25d16ace091dda2fcec5d39c9199d9829e91e9 SHA1 a1ba7e1b845eb05e5d24b22fe2ab5beafe39b22a SHA256 d887a18cade52167c0390fa7270bf86e33d95cba34d2ac3f755e13a1360d9de8 DIST postgresql-test-8.2.5.tar.bz2 987137 RMD160 0acc94206384bcd784bd2d35e9d5b9c256e24db0 SHA1 cd5da8abcee439ff4d613951293d48ea432274da SHA256 89174ef45e2ce09221d31c57745ecc18ea8f28389b0ba541ec2f26ba656dc752 +DIST postgresql-test-8.3beta1.tar.bz2 1068225 RMD160 16eeaf40a71a9e76b0dd008ac8b6961bba9156cd SHA1 8638b6f756b077f36c54428bcb94def96ffcaeb6 SHA256 a727f7eabcb3a0cbc37b903b1a4bb53cf6fb99a71100414915d85c8daa7da5f3 EBUILD postgresql-server-7.3.20.ebuild 8262 RMD160 fa6d992d574b390ae67cb7195f18806b7a0d86ef SHA1 6760b9c52e6a59a6a2b5f1621c9df52d5a77896c SHA256 7cd5154956ed6bb0b2cdc63843838d8e53d371899be003f7dc064f6a6908143d MD5 51efd564be212e439be9842ea9f37a72 postgresql-server-7.3.20.ebuild 8262 RMD160 fa6d992d574b390ae67cb7195f18806b7a0d86ef postgresql-server-7.3.20.ebuild 8262 @@ -157,22 +180,14 @@ EBUILD postgresql-server-8.2.5.ebuild 8826 RMD160 9ec659216c1f3974b7f0041072bfe9 MD5 c50fcf50f08302da313c1f53f520e18a postgresql-server-8.2.5.ebuild 8826 RMD160 9ec659216c1f3974b7f0041072bfe9c7612c2496 postgresql-server-8.2.5.ebuild 8826 SHA256 047b7d44fdeeb956861400ef4f183cbd2b6df12317dec7881ec343d7bf5ad114 postgresql-server-8.2.5.ebuild 8826 +EBUILD postgresql-server-8.3_beta1.ebuild 8731 RMD160 9a0194dd0f0a829e18a17fedaa473a6d57a2f7b4 SHA1 253aa78671076356832887d70b440db99362a982 SHA256 63feb0aefe01d843ea3903aa7eacf3e08ce6c4450d50588e64d4559df802289b +MD5 7dae4e20b5daa801055c990e60a7ad55 postgresql-server-8.3_beta1.ebuild 8731 +RMD160 9a0194dd0f0a829e18a17fedaa473a6d57a2f7b4 postgresql-server-8.3_beta1.ebuild 8731 +SHA256 63feb0aefe01d843ea3903aa7eacf3e08ce6c4450d50588e64d4559df802289b postgresql-server-8.3_beta1.ebuild 8731 MISC ChangeLog 412 RMD160 b99776c6be65236f0156bd78bf2fcaeba2b1550f SHA1 e9c8045024dd160b67736cc1283d49aa113ca7d7 SHA256 a6571ecd9b91edf7ce97759df9c320417b1e67ee7538163cffdfca05b6d167ff MD5 47127296a7cfb06f8b9c5768748a6c5e ChangeLog 412 RMD160 b99776c6be65236f0156bd78bf2fcaeba2b1550f ChangeLog 412 SHA256 a6571ecd9b91edf7ce97759df9c320417b1e67ee7538163cffdfca05b6d167ff ChangeLog 412 -MISC postgresql-server-8.0.14.ebuild.orig 8168 RMD160 b78ed74fdaa6fb79ac20c26d4c1d66caf51bdcd2 SHA1 e558fdbf7fe9486ccc183bd6c293c39204fe6bed SHA256 220fecf8766e56664060bc1f894a07266592cb1bf3c33b66965ca0b7521e04fe -MD5 1ff04fbe996e3a159257f577c107b74c postgresql-server-8.0.14.ebuild.orig 8168 -RMD160 b78ed74fdaa6fb79ac20c26d4c1d66caf51bdcd2 postgresql-server-8.0.14.ebuild.orig 8168 -SHA256 220fecf8766e56664060bc1f894a07266592cb1bf3c33b66965ca0b7521e04fe postgresql-server-8.0.14.ebuild.orig 8168 -MISC postgresql-server-8.1.10.ebuild.orig 8385 RMD160 4a27965bb7e0b5611d6f345c9fad8a9e2f3eb263 SHA1 0781102a3d6238b0e9a562e5f95537a24debef63 SHA256 6a2ba3c37af008bf6a2372118a85cc1720b5b2194b6b9470221a8a6381fed302 -MD5 c68fcc2447005256855cda50a315a43c postgresql-server-8.1.10.ebuild.orig 8385 -RMD160 4a27965bb7e0b5611d6f345c9fad8a9e2f3eb263 postgresql-server-8.1.10.ebuild.orig 8385 -SHA256 6a2ba3c37af008bf6a2372118a85cc1720b5b2194b6b9470221a8a6381fed302 postgresql-server-8.1.10.ebuild.orig 8385 -MISC postgresql-server-8.2.5.ebuild.orig 8711 RMD160 fcb5cf3d4557c2016151dd3d914c8853b2604ab3 SHA1 342f759da83b3aee9217744151956bae6b46bb52 SHA256 c110640fadce47913bd58ae5502b18c0e3df4354b4a35d1106d9d94d97e8c7bc -MD5 dc9bd610a55b77bf6aca6cdc66e540c1 postgresql-server-8.2.5.ebuild.orig 8711 -RMD160 fcb5cf3d4557c2016151dd3d914c8853b2604ab3 postgresql-server-8.2.5.ebuild.orig 8711 -SHA256 c110640fadce47913bd58ae5502b18c0e3df4354b4a35d1106d9d94d97e8c7bc postgresql-server-8.2.5.ebuild.orig 8711 MD5 ee191472df53f8bb1270c5548390c31a files/digest-postgresql-server-7.3.20 813 RMD160 4b88cb41b2e4225803f92ded88f7f39c354afaf2 files/digest-postgresql-server-7.3.20 813 SHA256 8aa60ae084b53412429e244c10c4cb8f594dd5d10f6aa456a837881ab1216066 files/digest-postgresql-server-7.3.20 813 @@ -188,3 +203,6 @@ SHA256 74756810f7e194f4b5ad4f2509d539555354821e1923863fb392068e34a919b2 files/di MD5 b55326c0780778c9a0d91693facf727d files/digest-postgresql-server-8.2.5 804 RMD160 861fdc75cd0e9ef81a6f68401c0e092fee27136b files/digest-postgresql-server-8.2.5 804 SHA256 68ae14e762e44f46000fd71fcb490e2115ed16240cf3ec3f33d3e35b2fa4be37 files/digest-postgresql-server-8.2.5 804 +MD5 eb730349f8c3d10f72bae6feb4f9cb52 files/digest-postgresql-server-8.3_beta1 834 +RMD160 495c3061744288edce75d9d88f7111e3f993ceee files/digest-postgresql-server-8.3_beta1 834 +SHA256 49f71dae6ac059b6a88cc83bfdb7ad8d430e9974fed099d9c4317fdd6cf7c2a4 files/digest-postgresql-server-8.3_beta1 834 diff --git a/dev-db/postgresql-server/files/digest-postgresql-server-8.3_beta1 b/dev-db/postgresql-server/files/digest-postgresql-server-8.3_beta1 new file mode 100644 index 0000000..9c824fe --- /dev/null +++ b/dev-db/postgresql-server/files/digest-postgresql-server-8.3_beta1 @@ -0,0 +1,9 @@ +MD5 e142031cdc181aab8f97c7957cb12715 postgresql-base-8.3beta1.tar.bz2 9496130 +RMD160 bbc1250cc901124c4eec5c2b4cc5b2dbb3acf7b6 postgresql-base-8.3beta1.tar.bz2 9496130 +SHA256 fd2777dadfb6699df83cbdc26388f2d7e9a95680a0a4db3f7d35ea96d7244d2c postgresql-base-8.3beta1.tar.bz2 9496130 +MD5 0fe6fc6ea38a5bec8593b9017934fdd7 postgresql-opt-8.3beta1.tar.bz2 178035 +RMD160 405eb92402c8b3013adb72329fe27f4cfc1fc607 postgresql-opt-8.3beta1.tar.bz2 178035 +SHA256 35f808b7d058ceedc26f297ec312f01354a062224324815ae8c082f7e98995a0 postgresql-opt-8.3beta1.tar.bz2 178035 +MD5 fbed2a735952d13bf550cae721a62135 postgresql-test-8.3beta1.tar.bz2 1068225 +RMD160 16eeaf40a71a9e76b0dd008ac8b6961bba9156cd postgresql-test-8.3beta1.tar.bz2 1068225 +SHA256 a727f7eabcb3a0cbc37b903b1a4bb53cf6fb99a71100414915d85c8daa7da5f3 postgresql-test-8.3beta1.tar.bz2 1068225 diff --git a/dev-db/postgresql-server/files/postgresql-8.3-common.patch b/dev-db/postgresql-server/files/postgresql-8.3-common.patch new file mode 100644 index 0000000..bab8258 --- /dev/null +++ b/dev-db/postgresql-server/files/postgresql-8.3-common.patch @@ -0,0 +1,73 @@ +diff --git a/config/programs.m4 b/config/programs.m4 +index 9434113..d72b35c 100644 +--- a/config/programs.m4 ++++ b/config/programs.m4 +@@ -202,8 +202,12 @@ AC_DEFUN([PGAC_CHECK_GETTEXT], + dnl FIXME: We should probably check for version >=0.10.36. + AC_CHECK_PROGS(XGETTEXT, xgettext) + +- # Note: share/locale is always the default, independent of $datadir +- localedir='${prefix}/share/locale' ++ # Note: share/locale *WAS* always the default, independent of $datadir ++ AC_ARG_WITH([locale-dir], ++ AC_HELP_STRING([--with-locale-dir],[Set path to locale files]), ++ [ localedir="${withval}" ], ++ [ localedir='${prefix}/share/locale' ] ++ ) + AC_SUBST(localedir) + ])# PGAC_CHECK_GETTEXT + +diff --git a/src/include/storage/s_lock.h b/src/include/storage/s_lock.h +index a9cbeac..d5c2764 100644 +--- a/src/include/storage/s_lock.h ++++ b/src/include/storage/s_lock.h +@@ -298,6 +298,29 @@ tas(volatile slock_t *lock) + + #endif /* __s390__ || __s390x__ */ + ++#if defined(__sh__) ++#define HAS_TEST_AND_SET ++ ++typedef unsigned char slock_t; ++ ++#define TAS(lock) tas(lock) ++ ++static __inline__ int ++tas(volatile slock_t *lock) ++{ ++ register int _res = 1; ++ ++ __asm__ __volatile__( ++ "tas.b @%1\n\t" ++ "movt %0\n\t" ++ "xor #1,%0" ++: "=z"(_res) ++: "r"(lock) ++: "t","memory"); ++ return _res; ++} ++ ++#endif /* __sh__ */ + + #if defined(__sparc__) /* Sparc */ + #define HAS_TEST_AND_SET +diff --git a/src/makefiles/Makefile.darwin b/src/makefiles/Makefile.darwin +index 9f761d4..83b2974 100644 +--- a/src/makefiles/Makefile.darwin ++++ b/src/makefiles/Makefile.darwin +@@ -5,7 +5,15 @@ DLSUFFIX = .so + CFLAGS_SL = + + ifdef PGXS ++ifdef PGXS_IN_SERVER ++ifndef PGXS_WITH_SERVER ++BE_DLLLIBS= -bundle_loader $(top_builddir)/src/backend/postgres ++else ++BE_DLLLIBS= -bundle_loader ${PGXS_WITH_SERVER} ++endif ++else + BE_DLLLIBS= -bundle_loader $(bindir)/postgres ++endif + else + BE_DLLLIBS= -bundle_loader $(top_builddir)/src/backend/postgres + endif diff --git a/dev-db/postgresql-server/files/postgresql-8.3-regress.patch b/dev-db/postgresql-server/files/postgresql-8.3-regress.patch new file mode 100644 index 0000000..18366df --- /dev/null +++ b/dev-db/postgresql-server/files/postgresql-8.3-regress.patch @@ -0,0 +1,43 @@ +diff --git a/src/test/regress/GNUmakefile b/src/test/regress/GNUmakefile +index 0df7b9f..2c34021 100644 +--- a/src/test/regress/GNUmakefile ++++ b/src/test/regress/GNUmakefile +@@ -135,13 +135,14 @@ all-spi: + tablespace-setup: + -rm -rf ./testtablespace + mkdir ./testtablespace ++ chown -Rf portage . + + ## + ## Run tests + ## + + check: all +- ./pg_regress --temp-install=./tmp_check --top-builddir=$(top_builddir) --srcdir=$(abs_srcdir) --temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) $(TEMP_CONF) ++ su -s /bin/sh portage -c "PATH=\"${PATH}\" ./pg_regress --temp-install=./tmp_check --top-builddir=$(top_builddir) --srcdir=$(abs_srcdir) --temp-port=$(TEMP_PORT) --schedule=$(srcdir)/parallel_schedule --multibyte=$(MULTIBYTE) --load-language=plpgsql $(MAXCONNOPT) $(NOLOCALE) $(TEMP_CONF) --psqldir=/usr/lib/postgresql-${SLOT}/bin/" + + installcheck: all + ./pg_regress --psqldir=$(PSQLDIR) --schedule=$(srcdir)/serial_schedule --srcdir=$(abs_srcdir) --multibyte=$(MULTIBYTE) --load-language=plpgsql $(NOLOCALE) +diff --git a/src/test/regress/pg_regress.c b/src/test/regress/pg_regress.c +index 741eb11..37775be 100644 +--- a/src/test/regress/pg_regress.c ++++ b/src/test/regress/pg_regress.c +@@ -760,9 +760,6 @@ initialize_environment(void) + sprintf(tmp, "%s/install/%s", temp_install, datadir); + datadir = tmp; + +- /* psql will be installed into temp-install bindir */ +- psqldir = bindir; +- + /* + * Set up shared library paths to include the temp install. + * +@@ -2019,7 +2016,7 @@ regression_main(int argc, char *argv[], init_function ifunc, test_function tfunc + */ + snprintf(buf, sizeof(buf), + SYSTEMQUOTE "\"%s/psql\" -X postgres <%s 2>%s" SYSTEMQUOTE, +- bindir, DEVNULL, DEVNULL); ++ psqldir, DEVNULL, DEVNULL); + for (i = 0; i < 60; i++) + { + /* Done if psql succeeds */ diff --git a/dev-db/postgresql-server/files/postgresql-8.3-server.patch b/dev-db/postgresql-server/files/postgresql-8.3-server.patch new file mode 100644 index 0000000..8752fe7 --- /dev/null +++ b/dev-db/postgresql-server/files/postgresql-8.3-server.patch @@ -0,0 +1,134 @@ +diff --git a/GNUmakefile.in b/GNUmakefile.in +index f7bcc67..ec8fcf1 100644 +--- a/GNUmakefile.in ++++ b/GNUmakefile.in +@@ -11,19 +11,16 @@ include $(top_builddir)/src/Makefile.global + all: + $(MAKE) -C doc all + $(MAKE) -C src all +- $(MAKE) -C config all + @echo "All of PostgreSQL successfully made. Ready to install." + + install: + $(MAKE) -C doc $@ + $(MAKE) -C src $@ +- $(MAKE) -C config $@ + @echo "PostgreSQL installation complete." + + installdirs uninstall: + $(MAKE) -C doc $@ + $(MAKE) -C src $@ +- $(MAKE) -C config $@ + + distprep: + $(MAKE) -C doc $@ +diff --git a/contrib/Makefile b/contrib/Makefile +index fe86803..608a5b6 100644 +--- a/contrib/Makefile ++++ b/contrib/Makefile +@@ -24,14 +24,12 @@ WANTED_DIRS = \ + pg_freespacemap \ + pg_standby \ + pg_trgm \ +- pgbench \ + pgcrypto \ + pgrowlocks \ + pgstattuple \ + seg \ + spi \ +- tablefunc \ +- vacuumlo ++ tablefunc + + ifeq ($(with_openssl),yes) + WANTED_DIRS += sslinfo +diff --git a/contrib/adminpack/Makefile b/contrib/adminpack/Makefile +index c7dad12..05a175c 100644 +--- a/contrib/adminpack/Makefile ++++ b/contrib/adminpack/Makefile +@@ -1,7 +1,7 @@ + # $PostgreSQL: pgsql/contrib/adminpack/Makefile,v 1.5 2007/06/26 22:05:01 tgl Exp $ + + MODULE_big = adminpack +-PG_CPPFLAGS = -I$(libpq_srcdir) ++PG_CPPFLAGS = -I$(libpq_srcdir) -I../../src/include/ + DATA_built = adminpack.sql + DATA = uninstall_adminpack.sql + DOCS = README.adminpack +diff --git a/src/Makefile b/src/Makefile +index 8d66bf6..6818ef5 100644 +--- a/src/Makefile ++++ b/src/Makefile +@@ -19,14 +19,11 @@ all install installdirs uninstall distprep: + $(MAKE) -C backend $@ + $(MAKE) -C backend/utils/mb/conversion_procs $@ + $(MAKE) -C backend/snowball $@ +- $(MAKE) -C include $@ +- $(MAKE) -C interfaces $@ + $(MAKE) -C bin $@ + $(MAKE) -C pl $@ +- $(MAKE) -C makefiles $@ + $(MAKE) -C test/regress $@ + +-install: install-local ++install: + + install-local: installdirs-local + $(INSTALL_DATA) Makefile.global '$(DESTDIR)$(pgxsdir)/$(subdir)/Makefile.global' +diff --git a/src/Makefile.global.in b/src/Makefile.global.in +index cbe2634..f2585c3 100644 +--- a/src/Makefile.global.in ++++ b/src/Makefile.global.in +@@ -372,10 +372,8 @@ endif + + + submake-libpq: +- $(MAKE) -C $(libpq_builddir) all + + submake-libpgport: +- $(MAKE) -C $(top_builddir)/src/port all + + .PHONY: submake-libpq submake-libpgport + +@@ -418,6 +416,8 @@ ifdef PROFILE + LDFLAGS += $(PROFILE) + endif + ++CFLAGS += -I${top_srcdir}/src/include ++ + + ########################################################################## + # +diff --git a/src/bin/Makefile b/src/bin/Makefile +index 1f319d5..846a5e7 100644 +--- a/src/bin/Makefile ++++ b/src/bin/Makefile +@@ -13,8 +13,8 @@ subdir = src/bin + top_builddir = ../.. + include $(top_builddir)/src/Makefile.global + +-DIRS = initdb ipcclean pg_ctl pg_dump \ +- psql scripts pg_config pg_controldata pg_resetxlog ++DIRS = initdb ipcclean pg_ctl \ ++ pg_controldata pg_resetxlog + ifeq ($(PORTNAME), win32) + DIRS+=pgevent + endif +diff --git a/src/port/Makefile b/src/port/Makefile +index b113159..c786e83 100644 +--- a/src/port/Makefile ++++ b/src/port/Makefile +@@ -35,11 +35,10 @@ OBJS = $(LIBOBJS) chklocale.o copydir.o dirmod.o exec.o noblock.o path.o pipe.o + # foo_srv.o and foo.o are both built from foo.c, but only foo.o has -DFRONTEND + OBJS_SRV = $(OBJS:%.o=%_srv.o) + +-all: libpgport.a libpgport_srv.a ++all: libpgport_srv.a + + # libpgport is needed by some contrib +-install: all installdirs +- $(INSTALL_STLIB) libpgport.a '$(DESTDIR)$(libdir)/libpgport.a' ++install: + + installdirs: + $(mkinstalldirs) '$(DESTDIR)$(libdir)' diff --git a/dev-db/postgresql-server/files/postgresql.conf-8.3 b/dev-db/postgresql-server/files/postgresql.conf-8.3 new file mode 100644 index 0000000..6cc3210 --- /dev/null +++ b/dev-db/postgresql-server/files/postgresql.conf-8.3 @@ -0,0 +1,43 @@ +# PostgreSQL's Database Directory +PGDATA="/var/lib/postgresql/8.3/data" + +# PostgreSQL User +PGUSER="postgres" + +# PostgreSQL Group +PGGROUP="postgres" + +# Extra options to run postmaster with, e.g.: +# -N is the maximal number of client connections +# -B is the number of shared buffers and has to be at least 2x the value for -N +# Please read the man-page to postmaster for more options. Many of these options +# can be set directly in the configuration-file. +#PGOPTS="-N 512 -B 1024" + + +# SERVER SHUTDOWN: +# The server will receive 3 signals in the worst case: +# 1. SIGTERM +# This signals the server to ignore new connections and to +# wait for all clients to end their transactions before shutting down. +# Use WAIT_FOR_DISCONNECT to control how much time the clients +# should have until the next signal is being sent. +# 2. SIGINT +# Tell the server to forcefully disconnect all clients. +# Terminating a client results in a rollback of the open transactions for this client. +# Use WAIT_FOR_CLEANUP to determine how much time the server has +# for cleanup. (Set it to "forever" if you want to wait forever.) +# 3. SIGQUIT +# This will terminate the server immediately and results in a recovery run for the next start. + +# Wait for clients to disconnect (seconds or "forever") +WAIT_FOR_DISCONNECT=10 + +# Time the server has to clean up (seconds or "forever") +WAIT_FOR_CLEANUP=10 + +# If you have to export environment variables for the database process, +# this can be done here. +# +# Example: +# export R_HOME="/usr/lib/R" diff --git a/dev-db/postgresql-server/files/postgresql.init-8.3 b/dev-db/postgresql-server/files/postgresql.init-8.3 new file mode 100644 index 0000000..f2a90ef --- /dev/null +++ b/dev-db/postgresql-server/files/postgresql.init-8.3 @@ -0,0 +1,60 @@ +#!/sbin/runscript +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +opts="${opts} reload" + +depend() { + use net + if [ -L /etc/eselect/postgresql/service ] ; then + local p_service="$(for f in /etc/eselect/postgresql/service/* ; do source $f ; done ; echo $postgres_service )" + test "${p_service}" = "${SVCNAME}" && provide postgresql + fi +} + +checkconfig() { + if [ ! -d "$PGDATA" ] ; then + eerror "Directory not found: $PGDATA" + eerror "Please make sure that PGDATA points to the right path." + eerror "You can run 'emerge postgresql-server --config' to setup a new database cluster." + return 1 + fi +} + +start() { + checkconfig || return 1 + + ebegin "Starting PostgreSQL" + + if [ -f "$PGDATA/postmaster.pid" ] ; then + rm -f "$PGDATA/postmaster.pid" + fi + + start-stop-daemon --start \ + --pidfile "${PGDATA}/postmaster.pid" \ + --chuid ${PGUSER}:${PGGROUP} \ + --exec /usr/lib/postgresql-8.3/bin/postmaster \ + -- \ + -D "${PGDATA}" \ + --silent-mode=true \ + ${PGOPTS} + + eend $? +} + +stop() { + ebegin "Stopping PostgreSQL" + # Note: we have to do --oknodo here, otherwise it will always fail + # when there are open transactions. This bug has been corrected + # in baselayout-1.13.0_alpha8. + start-stop-daemon --stop --pidfile "${PGDATA}/postmaster.pid" \ + --retry -TERM/${WAIT_FOR_DISCONNECT}/-INT/${WAIT_FOR_CLEANUP}/-QUIT --oknodo + eend $? +} + +reload() { + ebegin "Reloading PostgreSQL configuration" + start-stop-daemon --stop --pidfile "${PGDATA}/postmaster.pid" --signal HUP --oknodo + eend $? +} diff --git a/dev-db/postgresql-server/postgresql-server-8.3_beta1.ebuild b/dev-db/postgresql-server/postgresql-server-8.3_beta1.ebuild new file mode 100644 index 0000000..b9bb2cc --- /dev/null +++ b/dev-db/postgresql-server/postgresql-server-8.3_beta1.ebuild @@ -0,0 +1,221 @@ +# Copyright 1999-2007 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +WANT_AUTOCONF="latest" +WANT_AUTOMAKE="none" +inherit eutils multilib toolchain-funcs versionator autotools + +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd" + +DESCRIPTION="PostgreSQL server" +HOMEPAGE="http://www.postgresql.org/" +SRC_URI="mirror://postgresql/source/v${PV/_/}/postgresql-base-${PV/_/}.tar.bz2 + mirror://postgresql/source/v${PV/_/}/postgresql-opt-${PV/_/}.tar.bz2 + test? ( mirror://postgresql/source/v${PV/_/}/postgresql-test-${PV/_/}.tar.bz2 )" +LICENSE="POSTGRESQL" +SLOT="$(get_version_component_range 1-2)" +# find . -name \*.po | xargs -n 1 basename | cut -d. -f1|sort|uniq|sed 's/^/linguas_/' +IUSE_LINGUAS=" + linguas_af linguas_cs linguas_de linguas_es linguas_fa linguas_fr + linguas_hr linguas_hu linguas_it linguas_ko linguas_nb linguas_pl + linguas_pt_BR linguas_ro linguas_ru linguas_sk linguas_sl linguas_sv + linguas_tr linguas_zh_CN linguas_zh_TW" +IUSE="doc perl python selinux tcl test xml nls kernel_linux ${IUSE_LINGUAS}" + +wanted_languages() { + for u in ${IUSE_LINGUAS} ; do + use $u && echo ${u#linguas_} + done +} + +RDEPEND="~dev-db/postgresql-libs-${PV} + perl? ( >=dev-lang/perl-5.6.1-r2 ) + python? ( >=dev-lang/python-2.2 dev-python/egenix-mx-base ) + selinux? ( sec-policy/selinux-postgresql ) + tcl? ( >=dev-lang/tcl-8 ) + xml? ( dev-libs/libxml2 dev-libs/libxslt )" +DEPEND="${RDEPEND} + xml? ( dev-util/pkgconfig ) + test? ( ~dev-db/postgresql-client-${PV} )" +PDEPEND="doc? ( ~dev-db/postgresql-docs-${PV} )" + +[[ -r /etc/conf.d/postgresql-${SLOT} ]] && source /etc/conf.d/postgresql-${SLOT} +[[ -z "${PGDATA}" ]] && PGDATA="/var/lib/postgresql/${SLOT}/data" +[[ -z "${PG_MAX_CONNECTIONS}" ]] && PG_MAX_CONNECTIONS="512" + +S="${WORKDIR}/postgresql-${PV/_/}" + +pkg_setup() { + if [[ -f "${PGDATA}/PG_VERSION" ]] ; then + if [[ $(cat "${PGDATA}/PG_VERSION") != $(get_version_component_range 1-2) ]] ; then + eerror "PostgreSQL ${PV/_/} cannot upgrade your existing databases, you must" + eerror "use pg_dump to export your existing databases to a file, and then" + eerror "pg_restore to import them when you have upgraded completely." + eerror "You must remove your entire database directory to continue." + eerror "(database directory = ${PGDATA})." + die "Remove your database directory to continue" + fi + fi + enewgroup postgres 70 + enewuser postgres 70 /bin/bash /var/lib postgres +} + +src_unpack() { + unpack ${A} + cd "${S}" + + epatch "${FILESDIR}/postgresql-${SLOT}-common.patch" + epatch "${FILESDIR}/postgresql-${SLOT}-server.patch" + + if use test ; then + epatch "${FILESDIR}/postgresql-${SLOT}-regress.patch" + sed -e "s|/no/such/location|${S}/src/test/regress/tmp_check/no/such/location|g" -i src/test/regress/{input,output}/tablespace.source + else + mkdir -p "${S}/src/test/regress" + echo "all install:" > "${S}/src/test/regress/GNUmakefile" + fi + + eautoconf +} + +src_compile() { + # TODO: test if PPC really cannot work with other CFLAGS settings + # use ppc && CFLAGS="-pipe -fsigned-char" + + # eval is needed to get along with pg_config quotation of space-rich entities. + eval econf "$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --configure)" \ + --disable-thread-safety \ + $(use_with perl) \ + $(use_with python) \ + $(use_with tcl) \ + --with-includes="/usr/include/postgresql-${SLOT}/" \ + "$(built_with_use ~dev-db/postgresql-libs-${PV} nls && use_enable nls nls "$(wanted_languages)")" \ + || die "configure failed" + + for bd in . contrib $(use xml && echo contrib/xml2) ; do + PATH="/usr/lib/postgresql-${SLOT}/bin:${PATH}" \ + emake -C $bd -j1 LD="$(tc-getLD) $(get_abi_LDFLAGS)" \ + PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ + PGXS_IN_SERVER=1 PGXS_WITH_SERVER="${S}/src/backend/postgres" \ + NO_PGXS=0 USE_PGXS=1 docdir=/usr/share/doc/${PF} || die "emake in $bd failed" + done +} + +src_install() { + if use perl ; then + mv -f "${S}/src/pl/plperl/GNUmakefile" "${S}/src/pl/plperl/GNUmakefile_orig" + sed -e "s:\$(DESTDIR)\$(plperl_installdir):\$(plperl_installdir):" \ + "${S}/src/pl/plperl/GNUmakefile_orig" > "${S}/src/pl/plperl/GNUmakefile" + fi + + for bd in . contrib $(use xml && echo contrib/xml2) ; do + PATH="/usr/lib/postgresql-${SLOT}/bin:${PATH}" \ + emake install -C $bd -j1 DESTDIR="${D}" \ + PGXS_IN_SERVER=1 PGXS_WITH_SERVER="${S}/src/backend/postgres" \ + PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ + NO_PGXS=0 USE_PGXS=1 docdir=/usr/share/doc/${PF} || die "emake install in $bd failed" + done + rm -rf "${D}/usr/share/postgresql-${SLOT}/man/man7/" + rm "${D}"/usr/share/postgresql-${SLOT}/man/man1/{clusterdb,create{db,lang,user},drop{db,lang,user},ecpg,pg_{config,dump,dumpall,restore},psql,reindexdb,vacuumdb}.1 + + dodoc README HISTORY doc/{README.*,TODO,bug.template} + + dodir /usr/lib/eselect-postgresql/slots/${SLOT} + cat >"${D}/usr/lib/eselect-postgresql/slots/${SLOT}/service" <<-__EOF__ + postgres_ebuilds="\${postgres_ebuilds} ${PF}" + postgres_service="postgresql-${SLOT}" + __EOF__ + + newinitd "${FILESDIR}/postgresql.init-${SLOT}" postgresql-${SLOT} || die "Inserting init.d-file failed" + newconfd "${FILESDIR}/postgresql.conf-${SLOT}" postgresql-${SLOT} || die "Inserting conf.d-file failed" +} + +pkg_postinst() { + eselect postgresql update + [[ "$(eselect postgresql show)" = "(none)" ]] && eselect postgresql set ${SLOT} + [[ "$(eselect postgresql show-service)" = "(none)" ]] && eselect postgresql set-service ${SLOT} + elog "Execute the following command to setup the initial database environment:" + elog + elog "emerge --config =${CATEGORY}/${PF}" + elog + elog "The autovacuum function, which was in contrib, has been moved to the main" + elog "PostgreSQL functions starting with 8.1." + elog "You can enable it in ${ROOT}/etc/postgresql-${SLOT}/postgresql.conf." +} + +pkg_postrm() { + eselect postgresql update +} + +pkg_config() { + einfo "Creating the data directory ..." + mkdir -p "${PGDATA}" + chown -Rf postgres:postgres "${PGDATA}" + chmod 0700 "${PGDATA}" + + einfo "Initializing the database ..." + if [[ -f "${PGDATA}/PG_VERSION" ]] ; then + eerror "PostgreSQL ${PV} cannot upgrade your existing databases." + eerror "You must remove your entire database directory to continue." + eerror "(database directory = ${PGDATA})." + die "Remove your database directory to continue" + else + if use kernel_linux ; then + local SEM=`sysctl -n kernel.sem | cut -f-3` + local SEMMNI=`sysctl -n kernel.sem | cut -f4` + local SEMMNI_MIN=`expr \( ${PG_MAX_CONNECTIONS} + 15 \) / 16` + local SHMMAX=`sysctl -n kernel.shmmax` + local SHMMAX_MIN=`expr 500000 + 30600 \* ${PG_MAX_CONNECTIONS}` + + if [ ${SEMMNI} -lt ${SEMMNI_MIN} ] ; then + eerror "The current value of SEMMNI is too low" + eerror "for PostgreSQL to run ${PG_MAX_CONNECTIONS} connections!" + eerror "Temporary setting this value to ${SEMMNI_MIN} while creating the initial database." + echo ${SEM} ${SEMMNI_MIN} > /proc/sys/kernel/sem + fi + su postgres -c "/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb --pgdata ${PGDATA} ${PG_INITDB_OPTS}" + + if [ ! `sysctl -n kernel.sem | cut -f4` -eq ${SEMMNI} ] ; then + echo ${SEM} ${SEMMNI} > /proc/sys/kernel/sem + ewarn "Restoring the SEMMNI value to the previous value." + ewarn "Please edit the last value of kernel.sem in /etc/sysctl.conf" + ewarn "and set it to at least ${SEMMNI_MIN}:" + ewarn + ewarn " kernel.sem = ${SEM} ${SEMMNI_MIN}" + ewarn + fi + + if [ ${SHMMAX} -lt ${SHMMAX_MIN} ] ; then + eerror "The current value of SHMMAX is too low for postgresql to run." + eerror "Please edit /etc/sysctl.conf and set this value to at least ${SHMMAX_MIN}:" + eerror + eerror " kernel.shmmax = ${SHMMAX_MIN}" + eerror + fi + else + su postgres -c "/usr/$(get_libdir)/postgresql-${SLOT}/bin/initdb --pgdata ${PGDATA} ${PG_INITDB_OPTS}" + fi + + einfo + einfo "You can use the '${ROOT}/etc/init.d/postgresql-${SLOT}' script to run PostgreSQL instead of 'pg_ctl'." + einfo + fi +} + +src_test() { + einfo ">>> Test phase [check]: ${CATEGORY}/${PF}" + PATH="/usr/lib/postgresql-${SLOT}/bin:${PATH}" \ + emake -j1 check \ + PGXS=$(/usr/$(get_libdir)/postgresql-${SLOT}/bin/pg_config --pgxs) \ + NO_PGXS=0 USE_PGXS=1 SLOT=${SLOT} || { + hasq test ${FEATURES} && die "Make check failed. See above for details." + hasq test ${FEATURES} || eerror "Make check failed. See above for details." + } + + einfo "Yes, there are other tests which could be run." + einfo "... and no, we don't plan to add/support them." + einfo "For now, the main regressions tests will suffice." + einfo "If you think other tests are necessary, please submit a" + einfo "bug including a patch for this ebuild to enable them." +} |