chore(sys-fs/lvm2): import from portage

Change-Id: I063465287d80114f20da006350ef2506989c8736
This commit is contained in:
Brandon Philips 2013-02-15 16:32:19 -08:00
parent 3f5580ac9e
commit e0694d623a
27 changed files with 4329 additions and 6 deletions

File diff suppressed because it is too large Load Diff

View File

@ -1 +1,57 @@
DIST LVM2.2.02.88.tgz 1029151 RMD160 a5918c6dfef8300b8ad9ab53e913ab487a051436 SHA1 05a4fb09cb5e3d680ad1b268c941968853fb1979 SHA256 a129d1d3949524da7d6d2a67218254baea02df06a6744faa5808a4182b2fb432 AUX 1.02.22-dmeventd.initd 536 SHA256 c9dcee15ce55961e5df7928c350ae1c6db6e78c30d87f7fafa6ba4b016dd9191 SHA512 6f5e1ff94c4a89224f30d76821820e8e08952c929418892be623afc8b57cbc2f4e78dc2a293e74ef4fbcc0cdd49ac986cf76eff689f0280c4b3d0c8b96483f0c WHIRLPOOL 0a4647eb42798f0281704a50fc4cf1b0e2e90f11bca2362ee67c8ee50971b4743881e049520519038271b8fd7d6f150ded942832f20cc3705f1d491f71810745
AUX clvmd.confd-2.02.39 213 SHA256 68442d5c9da81bad79fa6b1beaede290f24ea6a4e4415f3d9f4e37ccca6c524a SHA512 9614c4188c9a5bcf398d1f521b52d7e2281fcdf76265fdaca4acda22be282d8468e82b54a2661d5753f4b9a442ebe93a60daf87c846db4e275a283f71c9fd8e2 WHIRLPOOL b429d06a5200d37f46e72190060bc2fe866575ba441b5f92d12d939bdc5d411ef37e895a7369bbaaf733b1a0d0305a05d499c7ae6c7360fe8767e902d2a3bfc4
AUX clvmd.rc-2.02.39 3682 SHA256 d60d88202589899e0856ac819cef1599103b7d5dc412afe5e0e38fc224aa79a8 SHA512 44779152b23ad21db054faf216daef9a17fbdf120cb064743d7eeff8a6a6686482b23d298c40f5569ca4ca3dfce9baa6bfc5f95b6730c12a46938253a9ec400d WHIRLPOOL 2081217dd77acae5b286eb4b7790cc0400cb8b90ae055f7ce5d8f8e9b44a970d5393dc98c9f8744cfbd8bb12047d9258774c16ec8250576d25fb5458b1dd2b2f
AUX device-mapper.conf-1.02.22-r3 15 SHA256 57777904f12a35617e5a4193c964ebb32396452487fd02353e71e16e7b46bc22 SHA512 1846e0ca1be7170d4c0beb694a23aea4d19b24b99a248bb0f4e034286a6beede0a8efc474b0c237e33ee72c86c93b6238f2d5ea23e224765acba99c90633261e WHIRLPOOL a0de185e849cd4d1aab9f145a6330f267ca547ba4ec7720be6f33e2c3c4c182b8674ea220b894f0fc806fe6637ba7bcabd739ca57b53b3efa5fad0cf1e57ba2e
AUX device-mapper.rc-1.02.51-r2 701 SHA256 dfdff0739dad521087ffa20f06e274bbc666e0ab85779621c360c04728e3cf58 SHA512 6b5c6dd96c1ec600969f39f2f90b1e2866be658a33383e6de1b6c9f81f5bcf6a4725b33ed0a5ba41de49ce5f3c970a328465e2f884502a9657c24fd2f563aff9 WHIRLPOOL 2474065a4a4ceb1747545146361536d7a0ca2eeb526856860c4ab150eebad092770e9aec5a9bd1bdf821b65b8a1d33111e44764a0a11633be7b8cb803829c115
AUX device-mapper.rc-2.02.67-r1 841 SHA256 18be4a227c786a8cdbbb0fb0f6da295db55359b91884b4d4e0e9976b80aa4003 SHA512 207853b607b25d07ec8c8421a44e1b663cd8ed2bea8179728c96b54778bebf372871e94b1a86a9f84ad31297660e5aa871bc7b925b83429a5978d966341f5bd5 WHIRLPOOL c4cc35d3d4998de5a3a3184d64bf5997c84f9573c67c1bf85db3e8103ed2542a7d240c1aa6d4d2be08a26cca7088102e0187fd0e1b4bd46a84339f23c5adb598
AUX device-mapper.rc-2.02.95-r2 2763 SHA256 1b3c74476c2f24dc5a297faaf8d0f65375fd867ef240f7eb48be0868039802a2 SHA512 5757bff476e118c6e880ae7e525600fc8eeb6f68ad965e175e6f9ad7e9cea5698c74b056bc0caadeaecebec20623dcf01a1ea45230bc2f600d3cd19902408005 WHIRLPOOL 4d8b1e12acf9f8f8bdd0b23f13efdd76402e3406791a153a18c66050e28d68e45738b56f8e2135b0fc63b129b025cad32b70b9c50c34b3cdb1300ea86ad9c193
AUX dm-start.sh 2114 SHA256 c064c3e2a1d128a6326b539a675f1a6cf88b75f5526222e232d53ea1468a9bcf SHA512 cd38c155e953a2c462bc76aeda349c579bfebd3ed1f33b3440585ef0c730fb40f3b13a1b335e558b9f2005551ea45426eea749cc1182f64e3cee1065e8550376 WHIRLPOOL ced2896b64b6b9c744ffc1f92195f3c2ed7cde9eb885b193161ead57d707d21ffb1ea3004bf1618cd2f48ed931314272b934d294859301d4fefbae00133073e0
AUX dmeventd.initd-2.02.67-r1 683 SHA256 84e157b1b99b9fddfc97ab95bc6d37bfa4378578458744447e9478ebe6fc821b SHA512 65e7676a65e142aec10dc3ae460b9eacdd4d46413baf80e3cb5e5151245961d4d334153fba72ea6f3f8a2319dbcca4a5f8a788f79ba526a430707b70e682bc39 WHIRLPOOL abc4f813d934b973a42cabf32d74564e153c34f1f3c5a6297e68c39143d299f4098dd08a593419e678fe50ea866551bb7c23b53583f4b0909b1dde23d388da0e
AUX dmtab 416 SHA256 e2e22bbe13fb97ec9a68659daa275b1d22fd0a3fd21e76b1f4bfba504a8bd7b5 SHA512 392b4bd85745bc774245195a1c416ae68efbe5f7b2498f6bfc40021cd2c9f6372fd1c3d346198c7749635b5d9b3f66ba1b963a2e144b4f522d87016ab4777de2 WHIRLPOOL f48c0fda382c7d57bad2ad4a8155189735236d13f24f39b3969736c3ad54d28f92c82174cae5c6775f8bc58506f19025f2cba6433f389c84505552fc8b4d3ed4
AUX lvm-monitoring.initd-2.02.67-r2 1181 SHA256 83291ac20f7d7de07a6fd4452ce46e4bd75dc55c826c4305049d33a7b34a30da SHA512 c41daeb748ecf5b4b2857727bb99f88a58beaf364604f83c4245e0fea9705a7f0a6695f3c1f961c4fa1d5f7b743427db136dc2c1c24d45bbfe71159e5463f320 WHIRLPOOL 31968d1f5d63950c6e6ed5d1ba6efb05fa191a3d7ca843fd665de0f5e4f32f42ebbdb689e5215b8cfb8fddf6644b8a8f7aae50535a6b43d1acbb3300c707117b
AUX lvm.conf-2.02.67.patch 1676 SHA256 0d36c4de0503739d822b3103a62dc0110febc3c56cd25d04443b30f54da6d0cb SHA512 59cb4a4625a7a18ec81b10f4b70a1632cf608d30b1fd827cc7a97692ab3cbbe2e0108001952f5002f1ffe6b354be7b96430e5ce86ed183885afdd1b5f0aa76e4 WHIRLPOOL 71c42b80f390de73b116dbe4808b44559196175465126393128b87826248ac5a34d79c4f64647d6b4541288ae4d25669168120ce8889deb08bfb7919dde249ed
AUX lvm.confd-2.02.28-r2 173 SHA256 28370c089c39c248d7ded0960b8d8a9256bada44d44c22ce3cec87d512ef6844 SHA512 67b153cbc5c2327c15f042b3b5590c1d8fdf9823efb19c80192ac4dcf98e530efea8ecae0aaaa4a54b0e3e4907565aa21455b364df1dbe8f2e7dffa1c5d355d0 WHIRLPOOL 06467b28ad2acf36984eef1b7b7e3d88277505760f848a808d85820cd1cccf6bb7397c00624d36961d9bdbb994e55de03444a7cfc97ecefd9bd3b785a3c6fdbf
AUX lvm.rc-2.02.51-r2 792 SHA256 b883e8ae1d3b9d8a0bdf85b009125e9408ee6d22a159b2e4c340fce455d5fd9f SHA512 da565deba09873acd962cbe4d1e18b6f685c00734404236f599eee4368e3cd73ca365af3680e2c4b8c3847deed8d001e3019b6cc116d93efb0171fc8c5740ebb WHIRLPOOL f496128dd7bcde8f711d4e3966b345390201bc0ab8b7420810ba29d40243568968250f23418da13919e5b7a5c23cd4279062db3c9d1582945daf768696be9d58
AUX lvm.rc-2.02.67-r1 918 SHA256 63e8e9cbfbed5124d31b365f0e8108822847ceb381143c9529d9bf5439f2a99a SHA512 b0429dc519300ee385c31309d055b7ac96e633bfbf1038be68018f67182de08c23e13e03fb567eaa68d48c9481f45853283d5a10502cece8e0629329059915bc WHIRLPOOL 1713f7108d42d8c2e60d4675cb503bfe84ad9bb40e84390e3a8463db91b8f133e4dc6b8d23c3e2156c7bf114b3a94154c0fc277d1a7242f389ef69b0ea9ca4da
AUX lvm.rc-2.02.95-r2 2999 SHA256 8f088a15453ec56f96daf44a72f26022b817e14ad1d00514c1fa48b810cac9bb SHA512 cd68d6b42cdd48dc7439329746da3c2c6dc86763a35f6c7dab712c4985a1f434ee3eb219e5f60717d93a99a3e8266a6f3a1d5713c911010db437a97f0c340958 WHIRLPOOL d4b6824037384743a19c6a5ec17c75065890fb0d441d584ef2e873eb4a07a2d4def7ebcfc4dcfea8323b90f3196e05a84f3ee0766ba5c974b1e76d16693f93c4
AUX lvm2-2.02.56-lvm2create_initrd.patch 2032 SHA256 b892d0544e05350e78ea400c16e6fd3657671d9bdf50bfae70505fd79bdda081 SHA512 b2a1705fa6b962027ebc5047583547489afe8ef8d8977c6284a28d0a8b0e05e20e6c48bd6c02a8bb02de9cfb40ac2d6e2a4b8ed8ef8c4ae7b6ea9a29bc4194de WHIRLPOOL cb533df528be0aae4bf50966285ef7a238f810d955ee86d5b446f43944d093732eff6ef8178d1654c4a2c075049ffc11994a99de6291bab1140cb8812be8b8a0
AUX lvm2-2.02.63-always-make-static-libdm.patch 1420 SHA256 1c498b5efce77ed16bbbfcd9e0ec6da404a9c70c7ad0959ed7b60733adfcfc21 SHA512 67735af9e51369d5b3b400cab4f9ffa25f8dea1c1ec3d01855cb3c5aeade5c39a35eeed43f3a665204fe6bbba4ca43baecd845330bf26d023064b94ca3d1317c WHIRLPOOL f273c893acedfd658e7947abb5f4b528f15de9808ae3862ec8a9189ba7de4ea6998dc67dbc7af642ca3a27bba2ef8eabfd48337f532145f88500988f564313b1
AUX lvm2-2.02.64-dmeventd-libs.patch 618 SHA256 1b8c281212b3c7edf456b38679c2c7ed838dd55789125c11cde691c2ccf62ace SHA512 d6a9ad131d84ff884bbfecd91b8e620eff88add838ed91628e9b75fb03d614b08a03efb8da28ae95bb9a86383a366add6f165e71b5a52a878783cdce7b6e788e WHIRLPOOL 54e82f40cd7cc665ac859ecf75fc780995bf635a69a33d5b364200544ef4fae661ef03fae2be3d68b572d115d61102a143ff86bab300dbc6666fae7dec383e3b
AUX lvm2-2.02.67-createinitrd.patch 660 SHA256 d59f5642fff9d9575227bfd0b3d103d928a6f7b08b417d6c458704171f11da39 SHA512 17fbba5d34ece5c1c25ef35fa3bbc3d6fcd20b44bd766c049bbc120853a8d60c9544db5790645a7814db5c272fd12d383699a8a9be6f4e9c56a7c0a1bb29ade2 WHIRLPOOL b358a31a9ee669a4fccf42280da5342c214932bfd83deee92d41351eb37dc6c0b2e5dc7419f2304128b5d285fed92db5b2e1634a71bbf1310d36b54d1a353bb0
AUX lvm2-2.02.70-asneeded.patch 326 SHA256 b0f84dadc213a9daaa97ae7815f624f0bcdc883d627659c7fcf8b7131538b43e SHA512 e38d8ef5d13c8861f7d1ca5c16271b3da138e8747ba01442de3f55aab45265fdaf42513e596f5af1d024fa2cf0c959bd3e47da52bbe8b13c75e665dd95f81279 WHIRLPOOL 77143f2dafeca221f8b3cda4df1669111de44a4ae4916d9aa2228aa76d94b4d1c556cf90a6f90cae2f1938f7474fb678ec6eab1b4e57f7fd20eab473de667cda
AUX lvm2-2.02.70-locale-muck.patch 477 SHA256 95d92e13ca1c926ff6da2b10bf12da63555a21463bb2f8118c722a7394ca5e13 SHA512 c3c702e7271e212c881a9d60577fc271fd58db21b8dbde96a06ecfd561cfcc90dfec55c00526d012f7a0a51cb6b1e8b70d54030050736de88ea00c26bc57ba5c WHIRLPOOL d9e658155a60b64216aa9af713c5486472297eedd42ac6b63055c21feb58246d350ec5994dc9ac98cd9d72babac869425a8a6b3767f5eb865db8a2356b9a610f
AUX lvm2-2.02.72-dynamic-static-ldflags.patch 2912 SHA256 536f57d7860ea078a4cc7f025d86c3b37befe2db9df7802d58b506bbeefa79d8 SHA512 b9b9ade3417e355566b090f0f2766d297cd3a8ab85cd62be5ca2e155b980fdd2d9f3829ffcbca8c8293bd2484f3d28aaa733b45d0874e336093eda5d3a1101c4 WHIRLPOOL 3d84876df5d8c4533c53d42589e7702bacdbbbdc15ac8df1fc35e931829de5d48e51750deb15bc5a90a065077dcfa7cef896336a444b6796019e9f76caee7a54
AUX lvm2-2.02.73-asneeded.patch 640 SHA256 f17df1abf6e36b7383b460eafa472f4395bc6bccee46c22c655a3381bd2ad306 SHA512 cc716520450f1e95f0fea13e50884d703ad40dafdcd27a6cdff4188207b8239abed9d2504e1b52e7a18a71a235814881d514b2a67d866f320e9653ac8b1cc305 WHIRLPOOL 2394ee68b57611385b49c911b9002df27a0f226e4f5db9675440f91feffe73a3577298c571a34a970f9616e31c82bde3830dde59b7a52c2f9febce02cc33f34d
AUX lvm2-2.02.73-locale-muck.patch 605 SHA256 7e888d9c5dc9944c933ffd03755310bda48b5abcd686ec9c45fe852caa06d88f SHA512 be4230d771414fe63d276ff387f34b2b4c2fdce4a5332a41671e39bb77673d5d90898cabc05befd978d6d964c6a9a15f0daaae5e29c7e8b0ef0f7b156920a729 WHIRLPOOL 6c42e264b711fba4d9d3be80d427ad817a3d9fc377f81ce7b7ec26da11afe22d6130507113d99ce75b02de3b05011eaddc9741eb3032821f65b6f2e3f690abf5
AUX lvm2-2.02.84-udev-pkgconfig.patch 1027 SHA256 62af214b1926b31205988dbed7ae7e7f2db825648e73eaed708042a9741edb95 SHA512 310acf1ba514a1b715880a8bb6ac6241f497b95dd4fa8b194773600372a6f46caaf29c897fad89e763c1fead13da7a83c13bc8a870a8ce367c28e5992493cfd7 WHIRLPOOL 426d078f118dcaed3d1da18fb726dd223eeb593386d2315708cfbe9b8b4b67b54832ea6f764724dcdb5400168ea1dabf59f25f9ae74a05a1a0d69741b7f5e581
AUX lvm2-2.02.88-respect-cc.patch 467 SHA256 a19e1049fc6da2b9feb0898360a86ea3aab715329e294376b0b5fc2e11fc41f0 SHA512 e5224f4826dc1d475519719588a683cbb94d49c5449b22698f52cf7735c2b6a0f758e7a591851a01f3e7065a7adb43232370b25ba26127b75ca6280d0befe36e WHIRLPOOL fb2b1d66fa5af0a177561fc51ec447f550873c220f6344a9e705a4a425f547962eb780266bbc178220ba00a015f4311ca775e9751433fab1739c10a62b3124c1
AUX lvm2-2.02.92-dynamic-static-ldflags.patch 3031 SHA256 90b880572186d4d1abf049d39e5f11e4cfedb3707c29eeb9740ceccdb3b62468 SHA512 edb78081d12bebaccd31c2474cb531563b729f1ad966afaff7892556177ee7a68217cc699c65383318066139ba62183adc8334f46f8f8933d62b6b5dcd11a023 WHIRLPOOL 6880a29dfb6747f167c41506e1472c0d48ef7af3a545238c733949f85f3f8f36110fb6908c6f626260f7ed975e56a4e8ccf42ece4d758fa3570154cbe970f2a3
AUX lvm2-2.02.92-locale-muck.patch 570 SHA256 3b24abd3c1254de1727a91b6ade26c36dc8dbee8ecbfab4bf6afbad21fdd59ff SHA512 2496cd39b06a69441dc7fe223eab4da25ca76e9f79be85d0f162dba784c3a86afaf430a366dac83354e07dcf07a486d5abee2bb4c677a84c13bd22998cfdfd39 WHIRLPOOL ed28aa549983fb9c1b1e1fe17bf2eca624dec43400fe1c8b67b00e010c3d745ec5f29479e7b4bed67ac2d4d1d6237df91eba7318e33d5e592893f76b17e9074a
AUX lvm2-2.02.95-lvmpath.patch 1247 SHA256 48d65570cbf86dcf749a0e77a1c57e26170ee90ddb8d8800988eab451f402456 SHA512 92b104476911882d0dae97251942a0dbf6c58d6d5c5af77e74b3e41de95a155966392fb539affef3de6def107168b436c54e5ee000bdff0c4701748481940eb4 WHIRLPOOL 26d00f35cdd4a0bbdabdda0a5a69956e7c7ed90dd3e774cfac46c4eb0e339a09e03dcd617b49863a550e79c72d327b3007ffa17ecd27750bf3a759058c4c9e7e
AUX lvm2-2.02.95-udev185.patch 6792 SHA256 3067d45a2829f94b9c5f7f5d38cceb2c36bdf181417aaab7d45e359df501099f SHA512 2296344ca2746f71a12874723b2bbed218bd3114144329b3f0d0910512bd61d85b81d2e72fbb0e27d6c618fcb93be6ac05c95d32c3972a3df55357d004d7e713 WHIRLPOOL b7d971f7818384572c9307f828360d2faf395f949832560bbeeb647da7e0ebba6f4cca5dc2a40080e9ad440f8a6ca193076794e5be4d927ed40efa214e0e37c2
AUX lvm2-2.02.97-strict-aliasing.patch 3142 SHA256 a4c799777c8e5a83fe1af52ed623ba472b859b5a0356dab2b53b31837b3a582e SHA512 7828562bb0fb95f3f75d08845b8c4767815dd74e117795ec873ea11135deaf389d6f0f8d66cf3c9b3843d6fa977c4be1a341013bcf4f016299e238c0d90be878 WHIRLPOOL 84f957d7b833896fe86fa9bf4c83183a8fb3c96780fd387288371df4fbf697f1ecc1c554862ea749ec72728bd608c1c8a1776cd26185903b53d559e3760d743c
AUX lvm2-start.sh 1025 SHA256 8c7da13b6326a383888110b25f53a4902cbec7d0dace274b9c5f1d6b0a775039 SHA512 8f89b550f5220b0b0f9f2ac24b0a76b9beee0acaf2eff1b9c6d28287498d7255cce8f1cdabfdfdbebfd35159f251ce8b45fca50f1798b3facdf7915b4724329b WHIRLPOOL 131de6e639f2bd17e3ef7a10e2349451ada1e24db17955cb69d67c816471a0f6ef6c933acb87507f0f6e8d98ab3dda54c047c68cd35f0afd25abf744f24d289f
AUX lvm2-start.sh-2.02.49-r3 1244 SHA256 e9c72d8500294301131183b37a7060dbcbd1d01b2a3e8425cf644e07652fae87 SHA512 5e57db4f24584437262f76d1c7ea8753decca8c4b041ec2e0414d92a81ea04cff48fee48fa01b7a0d7d9bc97493cee32ce78da6348f3920704be64f9671bb5ec WHIRLPOOL d90452503560ff6e97235c34f2bba7cca96905a4f881cd3fd7aa47c5a191b2529596c944c95aa8d7472ef5d2d7ad4a21432ac702ce1094697d42219a20d671a7
AUX lvm2-start.sh-2.02.67-r1 1267 SHA256 48def1f022a337df7cd030c0d1e386d843026814da5494dde5610aa66af94bd2 SHA512 0b60d5be19673927872b310b6825c5912dea55028b05668914856cb085fcf229fffc0089479b1e5bf346cc9e6f1c7f024634cafca5ebfbd0f431264455ddc4f4 WHIRLPOOL 59db10f46e56ef19824b0c43a92790a29a108648138137dfe40c3fa9673d2df3087d8852bae4843dbdc04db393d12fc318a7db186ce2e5ab039dde288c259516
AUX lvm2-start.sh-2.02.95 1535 SHA256 46225f0703ac66b8a41b34c74a93060749386be1e8c13e74ec2785cdd38577b4 SHA512 7ab702a6d62e608e2427561338aa04257303ef13ba79ba90810925723512523cba66d14751b1585fdf47cdde9897143a2f3868992095bfa5fb3b7cd013383ba4 WHIRLPOOL 97626e6ae3a22daae3ee15f7bc854d012776a73b6971d1ed6ae184ea2a5c3a1106c759a752a128cc7592ec3cf3620487e75796e4e0041ed8bf6574eeda501a9c
AUX lvm2-stop.sh 1939 SHA256 94a34e0b149ac43f5f1042c45ebdbaa69ac83bcbea7f894c15ab59aad65cb22c SHA512 f372d458b5bccbf872f7a8cc6759bde1c6aea90ba28b0a8a40b05084339e2bebf2d26431de8862cbb072e0b1e9970f393ac82fcda9437adfc75127ca2c76f97a WHIRLPOOL 74bd413264d8c6342b74d363ff1154e4c56b44526151869619f14d3c9952e2b870673676ad23a11ea9fa2ae0034c677897a3d859ea58b269411703d3fc0ebf10
AUX lvm2-stop.sh-2.02.49-r3 2253 SHA256 dea23f37d232437b15c743ca23af3d7baa95f2b7c71ac1e47ae5289bdcfe0a56 SHA512 909eae8d09157a7227c4240bb9d0a3d2a56347b8926a2209b3d778d6c4f709c94fec8d966839ea8ac4fcb0f2fed8ae4349bcb6b9d487ec83116b83123fff7979 WHIRLPOOL 057ea018b83f8480407cbbbc0b60ed17dcb84644476382f8a79dec9f08caea6f5a103d21389a12697927b205f91b3168db5db65596c5e86cd130482b78d6d489
AUX lvm2-stop.sh-2.02.67-r1 964 SHA256 5a208c7ab780404e476afdff349deedad5c57b3feb7e22a07a7075d09c1370e7 SHA512 af58f625423ea96a0b10c27a0222dd960614985f7fd11d681ffdb0151954b8bbec05643ba5addf371556ca7a6fa6fa68d70fdc7aec7b223a71d53dc95a8ef34b WHIRLPOOL 1163be1b762b56c227ff41367fc188fe6c54455a3607059f717ebfdb099a12fdb8cd5c44e3c0cc03af2f3600d2fc2801b86f7330af90dd17515a0cce0a5fd173
DIST LVM2.2.01.13.tgz 463900 SHA256 f98495cbf43128a67bf20fe21e74ef9aa8fb872de80c980f1f506b45b922df50 SHA512 0ca840b52185e834d349dfbc843105994b3dbd6e62736ee99c61d13ff704043f47fa8711afbb5f0699ca0b59f797faeb510bcf98a5f5cd4074c6f2a95edd0726 WHIRLPOOL 46db39d64b14cf2c9cb8f5e4571dd2f22c92deb6e2e7e40df11e40b581fa866103d12548a109049acda9b714400c29edca654f743dc2b26a2070a789ba357547
DIST LVM2.2.02.67.tgz 893643 SHA256 6cf217d26eddec1a33cdb06958f0ae1a191e7bd9d42f63646a1c93ceeb47c702 SHA512 9873b4a4275e6ae1bd3224f97d8e58e7a6cff6a70211255f9521663a9dcc44a57ec4aae516f8d40f494e81bcd56cde7dbc1d8f1ee3286f48c4515beb01a3ca41 WHIRLPOOL 79f6de964ff099d3721fc43c1a23f2d9bf7b6bc7c3411ce96a1f80ed1a6806fbc39bffdba2a60c9eff530cfc59018cf516d39482ef4ee39219a29bfd6a696e4f
DIST LVM2.2.02.73.tgz 937803 SHA256 9e8295d3ef36b5f56e213f8cb9ac9981cfa02fb2c95fe6879d6012d6128a8fc8 SHA512 238ea145e5cd37c39cedb19a2e4d0d8488a6724e366aabefea931dffe14465b55aef96e241f25a7c95d2bc7d08c5853a6d29eaaa1574af65b84454bf1b114f23 WHIRLPOOL 4544eb005bf993a36a923dcf0cd4db78020c151cd36e41e056b22e5f4bfc2ef0af3c1719a79f7b2377a2803f03ad67bea5faa47bf2be22a73ccb1bf65be5c056
DIST LVM2.2.02.88.tgz 1029151 SHA256 a129d1d3949524da7d6d2a67218254baea02df06a6744faa5808a4182b2fb432 SHA512 5c334c2c78220f4f9f082a74cbf0b156e96f2a07b5e55f054ff70c752ada97a67f83fa1d89c02accb7cbe5a62e356588831d96a102b7bf16cdce2591d4e37e4b WHIRLPOOL b30a1f2403e71ff6fb381ec82291018632e1d10258dd615efae4e39077a304a66271013247793390f57c26886599d8bad8f4b896d230f3e4f846e74c12282f71
DIST LVM2.2.02.95.tgz 1156414 SHA256 0335af36a151dafe5778da55a684546bfb98e7d3193834915b5efe95dbed9125 SHA512 52e3add58d0d3e521688654c6021faee1c0d4298d984c3800c3cae67663fa6ecbf1aa8afd74f5ee6d6c1e626c7635cb8fb1b18be41f3d13e47564b870f3e68fe WHIRLPOOL c94610c5323cad71575bc4fea37afb19daf1dd5feb123ad5494def76ad3cfce6b4afd9ca9658b61f897e3c6401164728bfb65fc1a7c17e4c134bd8f45ba31239
DIST LVM2.2.02.97.tgz 1193141 SHA256 edda82012e8a9e1f0b00ba5a331468d3e0201992be14c0dbea71bf564a51fc2b SHA512 c209054832f36d7b9cbf833c702410ac95c9de1e213b550c01c42f087fcae346d3c931c409184086bc1fcbcbc154c9a4f8b82b06291cefeb7ae22fe7a4c254a0 WHIRLPOOL d4dafde0ae1607cb231acbf07e8aecd579b9e9042e9356df1074a2683f5f2d1036a3483e1799cf7dd14e64f1f4c5506d3628979fd7128cea70ad45b653403dfa
DIST LVM2.2.02.98.tgz 1227919 SHA256 71030a58fef7e00d82ca4144334548e46aad24551a3cfbe7c3059b1bd137d864 SHA512 9dd1f98f47af1724a2ff64c6d728a03254c46a499a21d48d305a34ae5728ff7b51ef4d32646a96e424c21a44fc8abc87ab5a25e59fcb75beabbf0d3446e41d7b WHIRLPOOL 5abe78134f81bd19a5bc1a53575f3afe03dd8c71f081fe61a6f6de99804f376413a02fd4d33310d5c7ba05509ad7905f8fe8061c2bf85c15d73bfd02295aef56
EBUILD lvm2-2.01.13.ebuild 1472 SHA256 eb50df516739fad59559def061da0c94cf7288a500782e65d19e73fe8aa6e886 SHA512 2bf0cd2a56b85f40a6b9ac032756d4db0c7e5e7a968cf55152c30ce2805dbae6392190074b2f03f10ceb3e6f7ae14fb2b1bf4ed0699e5d458151fca0d1779c23 WHIRLPOOL 8ac5bf961eb58070d869bcddfcbbeff899f8ae02f4574c2acc16d1a0d31ebe2846eb96aef1541a384098dbd2907b94565557245ba40cf57877d33ee977791fc0
EBUILD lvm2-2.02.67-r2.ebuild 8288 SHA256 a485884c1a21e8f0c97d1b6e3977e28752c1995610cdfb0b341c43137c1578c3 SHA512 7e3881a5f05d6df82ced3a9615b8b83688f01f295ce2cc46645df0a0e673aed279528d1bc9b82dd7414842a11c10b7163fd88992b2fbe668b4df81b51bdaeeca WHIRLPOOL c16d09f8a68b42b38b6c660b6984afc31d63fefff31b079484ef77f834d3bdabd785e6ab570a45feaa98484eed73f191b618e7ac7e882e172d7698e72cbbc9d9
EBUILD lvm2-2.02.73-r1.ebuild 8720 SHA256 496651fd6ad69553a1d980ff6fd908468d93553b086370fe36d3b2ab78ce891e SHA512 aef753478ff66292f559e60ed501f8fab97a619fe493ff551a1bf83d6323d25fe775e645d040656427f4dfb276c2bf2633d7021a663519585fce72b69b8fe2a3 WHIRLPOOL b7fe161eaca574c952bbfdf0d993047322c46b97212be364f935fe5fe18f7a1b521d5737a261674a1f4ec40931568c901acd3aeb0e438d35c54f86db88e82f4e
EBUILD lvm2-2.02.73.ebuild 8602 SHA256 c552c6fa5b5cfabd4f9695af80aa36d6e1c6a58bd912ee7773645c2c202503b9 SHA512 191dd5ba3f1cfaed8d531e332356da6b133a1223e388cbd1204a0ccf06d0a2f3f152590b2171854ba11c9e2062dd380b2e874dae00b2cd109af5d5dfdf80149f WHIRLPOOL 8d9c6b274670fad717815b9381e7bf24022b4dd870cce9c764c205ae7e4466f267b582c1265459fb66333aa97cd6d1e9415c5e7f530a9cc37c1ad7b95978110f
EBUILD lvm2-2.02.88.ebuild 8083 SHA256 81d93c2baeefd0c6ed0314537f6bee57c24d823ec149230688b8f0e22dbf1889 SHA512 1430293b9ccadb81e2d504ced9fcb27e108ebffa0318df89e24bdc7720bf4033883dfd23190dfc5bd58265a4c6e18f0710eb5112b2fc57d81a61d9d60b8ad4cf WHIRLPOOL 1f41a5c25d326e18045ac1b3204ca9f725f16c4ac567b82e2068f12351a0c8c7494c5442ec570cb1599c7c7484d520aac92e917055eda432631a025385a4d7c0
EBUILD lvm2-2.02.95-r4.ebuild 8539 SHA256 a33dbeb82a45a0a6384519ed4917652c9c99957e77ef6bbfcc72ee69afcb6c7e SHA512 ad0a689ec7f3e268ab65dbe65397434ec8dce1fff799fdb6834d7dc44ecada02cef582f82d9550d360517f7a3cbaf5f549c4e72aa0a5f71f85d27047b1deaf48 WHIRLPOOL 73388baac602f2a080da4a6f531b85f1427f2a6f671b5d8b5cc0e81e115288b39f08c5f918a9c00204f63687ae85680f2f01575b8e67e2d7a788c1b4ac6c1ab0
EBUILD lvm2-2.02.97-r1.ebuild 8827 SHA256 5c4a6a50c4c3e1b3ba883486337a247cc423bb4bec423d53010193de175ddf02 SHA512 0c30926c0ac32f3e254c799cf431a55e5c278234b892ac1455593b6131360677faf9cfd34cbe15a6c837773cfb881a90d8af1af2ebc0cef40ec59d0b112520ce WHIRLPOOL 7044913c44a3eef5ad1e83caa0ad07c9ce2b890d3aa21c056b9ece15cb9233622b83e6c677fbb8d77dfc768ddf860d562333c038f7f28fef0d0f94dd6864fdef
EBUILD lvm2-2.02.97.ebuild 8576 SHA256 5ec44ab7a0c249c378f772d6383367747bda458e0d92d2bbf52216f41cf8b3c1 SHA512 1eab6415477fef8ffd803f91704dc91f57a4890b82630bcc4a3da1172126ed8be441e9dd399826cabd9f95b1b554216ca310f7d1d10cc9aefe141a88855486e3 WHIRLPOOL a46b59057bd94f159a8474fb66d8b3d5ef72fa0e06e7469697765cdd6af49c9fd814ed793bece20a75c6118ca4bdc4b7e49ae3d58ab31cdde9463b03c829b9d5
EBUILD lvm2-2.02.98.ebuild 8835 SHA256 cfafbaa2ec109d5442f00841b4f964bf497ae53389b50548cc41cd3d775e7659 SHA512 420bd4b629213a39a503b745999be227beb6b8b300fe948b88e56f5d281179abc99d43b80624de30badc8e7748fe5ea41a29f0ebe628f111421601534fede05d WHIRLPOOL 66b05bc11e81f88cd5a87e1be8afae4c471c68d44573045ffe8f15c154d3ecd4f395777ac7420fb59fa4ca22fb133ac0e31d16e416355e3b71a555d8ebd61865
MISC ChangeLog 55216 SHA256 d2d2c473a1247d331217934eea05305ea30b85f55064a622b703e69fe673b1aa SHA512 22cb6cc3cb2a6ac9335bba9ea1e355b4036b971bef7adebc81ce5d31cfdabb456db3ef66eef7240d1e90cfc6311e184f7e2a95a146fd5f2f222d07896b570823 WHIRLPOOL e20906f4b4336cfb2d6b0fb2a6e64fd3934a0016fc539ebb3d1541de1353986819e609d22092976ac4e6a643e5bbc72435076830362bbabd4cdfa884ae0f56f1
MISC metadata.xml 822 SHA256 419b6c05e9d710ff09188d6fd97d1d5a2e1f6a40ee04cfb9b8673c4898ea3a5d SHA512 a5a3c4a5a6eec44b451ee78077325e466cb9205ae8dcc5095792b93c0bf9d87fad71d81c04265480708d59a4cf45e2fe863f06fa1650176a5a2e03a1e2ed1098 WHIRLPOOL 111c1c52eda324439850db82ef69a0c5659186db646857ea549963a38b4b76a67bdbdf0a3ff8945ee8ccacf9bdcfd827ce94482d63fee55956eca08ee6d869df

View File

@ -0,0 +1,21 @@
#!/sbin/runscript
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/1.02.22-dmeventd.initd,v 1.1 2009/04/09 23:00:10 caleb Exp $
depend() {
before device-mapper
}
start() {
ebegin "Starting dmeventd"
start-stop-daemon --start --exec /sbin/dmeventd --pidfile /var/run/dmeventd.pid
eend $?
}
stop() {
ebegin "Stopping dmeventd"
start-stop-daemon --stop --exec /sbin/dmeventd --pidfile /var/run/dmeventd.pid
eend $?
}

View File

@ -0,0 +1,111 @@
#!/sbin/runscript
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/device-mapper.rc-2.02.95-r2,v 1.1 2012/05/27 07:05:22 robbat2 Exp $
depend() {
# As of .67-r1, we call ALL lvm start/stop scripts with --sysinit, that
# means dmeventd is NOT notified, as it cannot be safely running
before dmeventd checkfs fsck
after modules
}
dm_in_proc() {
local retval=0
for x in devices misc ; do
grep -qs 'device-mapper' /proc/${x}
retval=$((${retval} + $?))
done
return ${retval}
}
# char **get_new_dm_volumes(void)
#
# Return dmsetup commands to setup volumes
get_new_dm_volumes() {
local volume params
# Filter comments and blank lines
grep -v -e '^[[:space:]]*\(#\|$\)' /etc/dmtab | \
while read volume params ; do
# If it exists, skip it
dmvolume_exists "${volume%:}" && continue
# Assemble the command to run to create volume
echo "echo ${params} | /sbin/dmsetup create ${volume%:}"
done
return 0
}
# int dmvolume_exists(volume)
#
# Return true if volume exists in DM table
dmvolume_exists() {
local x line volume=$1
[ -z "${volume}" ] && return 1
/sbin/dmsetup ls 2>/dev/null | \
while read line ; do
for x in ${line} ; do
# the following conditonal return only breaks out
# of the while loop, as it is running in a pipe.
[ "${x}" = "${volume}" ] && return 1
# We only want to check the volume name
break
done
done
# if 1 was returned from the above loop, then indicate that
# volume exists
[ $? = 1 ] && return 0
# otherwise the loop exited normally and the volume does not
# exist
return 1
}
# int is_empty_dm_volume(volume)
#
# Return true if the volume exists in DM table, but is empty/non-valid
is_empty_dm_volume() {
local table volume=$1
set -- $(/sbin/dmsetup table 2>/dev/null | grep -e "^${volume}:")
[ "${volume}" = "$1" -a -z "$2" ]
}
start() {
if [ -e /proc/modules ] && ! dm_in_proc ; then
modprobe dm-mod 2>/dev/null
fi
# Ensure the dirs exist for locking and running
checkpath -q -d -m 0700 -o root:root /run/lvm /run/lock/lvm
local x volume
if [ -x /sbin/dmsetup -a -c /dev/mapper/control -a -f /etc/dmtab ] ; then
[ -n "$(get_new_dm_volumes)" ] && \
einfo " Setting up device-mapper volumes:"
get_new_dm_volumes | \
while read x ; do
[ -n "${x}" ] || continue
volume="${x##* }"
ebegin " Creating volume: ${volume}"
if ! eval "${x}" >/dev/null 2>/dev/null ; then
eend 1 " Error creating volume: ${volume}"
# dmsetup still adds an empty volume in some cases,
# so lets remove it
is_empty_dm_volume "${volume}" && \
/sbin/dmsetup remove "${volume}" 2>/dev/null
else
eend 0
fi
done
fi
}

View File

@ -0,0 +1,38 @@
#!/sbin/runscript
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm.rc-2.02.51-r2,v 1.2 2010/05/01 21:26:33 robbat2 Exp $
depend() {
if [ -f /etc/init.d/sysfs ]; then
# on baselayout-1 this causes
# dependency-cycles with checkroot (before *)
before checkfs fsck
after modules device-mapper
fi
use dmeventd
after dmeventd
}
run_addon() {
local f=/lib/rcscripts/addons/$1.sh
if [ -r "$f" ]; then
( . "$f" )
fi
}
start() {
if [ ! -f /etc/init.d/sysfs ]; then
eerror "The $SVCNAME init-script is written for baselayout-2!"
eerror "Please do not use it with baselayout-1!".
return 1
fi
run_addon lvm-start
}
stop() {
run_addon lvm-stop
}
# vim:ts=4

View File

@ -0,0 +1,96 @@
#!/sbin/runscript
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm.rc-2.02.95-r2,v 1.1 2012/05/27 07:05:22 robbat2 Exp $
depend() {
use dmeventd
before checkfs fsck
after dmeventd modules device-mapper
}
config='global { locking_dir = "/run/lock/lvm" }'
dm_in_proc() {
local retval=0
for x in devices misc ; do
grep -qs 'device-mapper' /proc/${x}
retval=$((${retval} + $?))
done
return ${retval}
}
start() {
# LVM support for /usr, /home, /opt ....
# This should be done *before* checking local
# volumes, or they never get checked.
# NOTE: Add needed modules for LVM or RAID, etc
# to /etc/modules.autoload if needed
for lvm_path in /bin/lvm /sbin/lvm ; do
[ -x "$lvm_path" ] && break
done
if [ ! -x "$lvm_path" ]; then
eerror "Cannot find lvm binary in /sbin or /bin!"
return 1
fi
if [ -z "${CDBOOT}" ] ; then
if [ -e /proc/modules ] && ! dm_in_proc ; then
modprobe dm-mod 2>/dev/null
fi
if [ -d /proc/lvm ] || dm_in_proc ; then
ebegin "Setting up the Logical Volume Manager"
#still echo stderr for debugging
lvm_commands="#! ${lvm_path} --config '${config}'\n"
# Extra PV find pass because some devices might not have been available until very recently
lvm_commands="${lvm_commands}pvscan\n"
# Now make the nodes
lvm_commands="${lvm_commands}vgscan --mknodes\n"
# And turn them on!
lvm_commands="${lvm_commands}vgchange --sysinit -a ly\n"
# Order of this is important, have to work around dash and LVM readline
printf "%b\n" "${lvm_commands}" | $lvm_path /proc/self/fd/0 --config "${config}" >/dev/null
eend $? "Failed to setup the LVM"
fi
fi
}
stop() {
for lvm_path in /bin/lvm /sbin/lvm ; do
[ -x "$lvm_path" ] && break
done
if [ ! -x "$lvm_path" ]; then
eerror "Cannot find lvm binary in /sbin or /bin!"
return 1
fi
# Stop LVM2
if [ -x /sbin/vgs ] && \
[ -x /sbin/vgchange ] && \
[ -x /sbin/lvchange ] && \
[ -f /etc/lvmtab -o -d /etc/lvm ] && \
[ -d /proc/lvm -o "`grep device-mapper /proc/misc 2>/dev/null`" ]
then
einfo "Shutting down the Logical Volume Manager"
VGS=$($lvm_path vgs --config "${config}" -o vg_name --noheadings --nosuffix 2> /dev/null)
if [ "$VGS" ]
then
ebegin " Shutting Down LVs & VGs"
#still echo stderr for debugging
lvm_commands="#! ${lvm_path} --config '${config}'\n"
# Extra PV find pass because some devices might not have been available until very recently
lvm_commands="${lvm_commands}lvchange --sysinit -a ln ${VGS}\n"
# Now make the nodes
lvm_commands="${lvm_commands}vgchange --sysinit -a ln\n"
# Order of this is important, have to work around dash and LVM readline
printf "%b\n" "${lvm_commands}" | $lvm_path /proc/self/fd/0 --config "${config}" >/dev/null
eend $? "Failed"
fi
einfo "Finished Shutting down the Logical Volume Manager"
fi
}
# vim:ts=4

View File

@ -0,0 +1,15 @@
Index: LVM2.2.02.73/tools/Makefile.in
===================================================================
--- LVM2.2.02.73.orig/tools/Makefile.in
+++ LVM2.2.02.73/tools/Makefile.in
@@ -149,8 +149,8 @@ liblvm2cmd-static.a: $(top_builddir)/lib
liblvm2cmd.$(LIB_SUFFIX): liblvm2cmd.a $(LDDEPS)
$(CC) -shared -Wl,-soname,$@.$(LIB_VERSION) \
- $(CFLAGS) $(CLDFLAGS) -o $@ $(LVMLIBS) $(LIBS) \
- @CLDWHOLEARCHIVE@ liblvm2cmd.a @CLDNOWHOLEARCHIVE@
+ $(CFLAGS) $(CLDFLAGS) -o $@ \
+ @CLDWHOLEARCHIVE@ liblvm2cmd.a @CLDNOWHOLEARCHIVE@ $(LVMLIBS) $(LIBS)
liblvm2cmd.$(LIB_SUFFIX).$(LIB_VERSION): liblvm2cmd.$(LIB_SUFFIX)
$(LN_S) -f $< $@

View File

@ -0,0 +1,25 @@
diff -Nuar LVM2.2.02.84.orig/configure.in LVM2.2.02.84/configure.in
--- LVM2.2.02.84.orig/configure.in 2011-02-04 22:17:54.000000000 +0000
+++ LVM2.2.02.84/configure.in 2011-04-09 23:42:27.134617541 +0000
@@ -803,9 +803,18 @@
AC_MSG_RESULT($UDEV_SYNC)
if test x$UDEV_SYNC = xyes; then
- AC_CHECK_LIB(udev, udev_queue_get_udev_is_active,
- [UDEV_PC="libudev"; UDEV_LIBS="-ludev"],
- [AC_MSG_ERROR([bailing out... libudev library is required])])
+ if test x$PKGCONFIG_INIT != x1; then
+ pkg_config_init
+ fi
+ PKG_CHECK_MODULES(UDEV, libudev, [UDEV_PC="libudev" HAVE_UDEV=yes],
+ [NOTFOUND=0
+ AC_CHECK_HEADERS(libudev.h,,$bailout)
+ check_lib_no_libs udev udev_queue_get_udev_is_active
+ if test $NOTFOUND = 0; then
+ AC_CHECK_LIB(udev, udev_queue_get_udev_is_active,
+ [UDEV_PC="libudev"; UDEV_LIBS="-ludev"],
+ [AC_MSG_ERROR([bailing out... libudev library is required])])
+ fi])
AC_DEFINE([UDEV_SYNC_SUPPORT], 1, [Define to 1 to enable synchronisation with udev processing.])
fi

View File

@ -0,0 +1,26 @@
http://sources.redhat.com/cgi-bin/cvsweb.cgi/LVM2/udev/69-dm-lvm-metad.rules.diff?r1=1.3&r2=1.4&cvsroot=lvm2
X-Gentoo-Bug: 409921
X-Gentoo-Bug-URL: https://bugs.gentoo.org/show_bug.cgi?id=409921
===================================================================
RCS file: /cvs/lvm2/LVM2/udev/69-dm-lvm-metad.rules,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- LVM2/udev/69-dm-lvm-metad.rules 2012/03/06 02:30:50 1.3
+++ LVM2/udev/69-dm-lvm-metad.rules 2012/03/12 08:59:55 1.4
@@ -19,7 +19,12 @@
# Device-mapper devices are processed only on change event or on supported synthesized event.
KERNEL=="dm-[0-9]*", ENV{DM_UDEV_RULES_VSN}!="?*", GOTO="lvm_end"
+# Set proper sbin path, /sbin has higher priority than /usr/sbin.
+ENV{LVM_SBIN_PATH}="/sbin"
+TEST!="$env{LVM_SBIN_PATH}/lvm", ENV{LVM_SBIN_PATH}="/usr/sbin"
+TEST!="$env{LVM_SBIN_PATH}/lvm", GOTO="lvm_end"
+
# Only process devices already marked as a PV - this requires blkid to be called before.
-ENV{ID_FS_TYPE}=="LVM2_member|LVM1_member", RUN+="$env{DM_SBIN_PATH}/pvscan --cache --major $major --minor $minor"
+ENV{ID_FS_TYPE}=="LVM2_member|LVM1_member", RUN+="$env{LVM_SBIN_PATH}/lvm pvscan --cache --major $major --minor $minor"
LABEL="lvm_end"

View File

@ -0,0 +1,208 @@
From 06738cac051b671ed26bd137676713eab457b37f Mon Sep 17 00:00:00 2001
From: Peter Rajnoha <prajnoha@redhat.com>
Date: Tue, 29 May 2012 08:09:10 +0000
Subject: [PATCH] Remove unsupported udev_get_dev_path libudev call used for checking udev dir.
With latest changes in the udev, some deprecated functions were removed
from libudev amongst which there was the "udev_get_dev_path" function
we used to compare a device directory used in udev and directore set in
libdevmapper. The "/dev" is hardcoded in udev now (udev version >= 183).
Amongst other changes and from packager's point of view, it's also
important to note that the libudev development library ("libudev-devel")
could now be a part of the systemd development library ("systemd-devel")
because of the udev + systemd merge.
---
WHATS_NEW_DM | 1 +
lib/commands/toolcontext.c | 28 ++++++++++++++++------------
lib/misc/lvm-wrappers.c | 14 --------------
lib/misc/lvm-wrappers.h | 1 -
libdm/libdevmapper.h | 3 +++
tools/dmsetup.c | 30 ++++++++++++------------------
6 files changed, 32 insertions(+), 45 deletions(-)
diff --git a/lib/commands/toolcontext.c b/lib/commands/toolcontext.c
index 78f0801..cc23163 100644
--- a/lib/commands/toolcontext.c
+++ b/lib/commands/toolcontext.c
@@ -650,9 +650,9 @@ static int _init_dev_cache(struct cmd_context *cmd)
{
const struct dm_config_node *cn;
const struct dm_config_value *cv;
- size_t uninitialized_var(udev_dir_len), len;
+ size_t len, udev_dir_len = strlen(DM_UDEV_DEV_DIR);
+ int len_diff;
int device_list_from_udev;
- const char *uninitialized_var(udev_dir);
init_dev_disable_after_error_count(
find_config_tree_int(cmd, "devices/disable_after_error_count",
@@ -661,13 +661,9 @@ static int _init_dev_cache(struct cmd_context *cmd)
if (!dev_cache_init(cmd))
return_0;
- if ((device_list_from_udev = udev_is_running() ?
+ device_list_from_udev = udev_is_running() ?
find_config_tree_bool(cmd, "devices/obtain_device_list_from_udev",
- DEFAULT_OBTAIN_DEVICE_LIST_FROM_UDEV) : 0)) {
- if (!(udev_dir = udev_get_dev_dir()))
- stack;
- udev_dir_len = (udev_dir) ? strlen(udev_dir) : 0;
- }
+ DEFAULT_OBTAIN_DEVICE_LIST_FROM_UDEV) : 0;
init_obtain_device_list_from_udev(device_list_from_udev);
if (!(cn = find_config_tree_node(cmd, "devices/scan"))) {
@@ -688,11 +684,19 @@ static int _init_dev_cache(struct cmd_context *cmd)
return 0;
}
- if (device_list_from_udev && udev_dir) {
+ if (device_list_from_udev) {
len = strlen(cv->v.str);
- len = udev_dir_len > len ? len : udev_dir_len;
- if (strncmp(udev_dir, cv->v.str, len) ||
- udev_dir[len] != cv->v.str[len]) {
+
+ /*
+ * DM_UDEV_DEV_DIR always has '/' at its end.
+ * If the item in the conf does not have it, be sure
+ * to make the right comparison without the '/' char!
+ */
+ len_diff = len && cv->v.str[len - 1] != '/' ?
+ udev_dir_len - 1 != len :
+ udev_dir_len != len;
+
+ if (len_diff || strncmp(DM_UDEV_DEV_DIR, cv->v.str, len)) {
device_list_from_udev = 0;
init_obtain_device_list_from_udev(0);
}
diff --git a/lib/misc/lvm-wrappers.c b/lib/misc/lvm-wrappers.c
index 84f61a6..6cffae3 100644
--- a/lib/misc/lvm-wrappers.c
+++ b/lib/misc/lvm-wrappers.c
@@ -65,16 +65,6 @@ bad:
return 0;
}
-const char *udev_get_dev_dir(void)
-{
- if (!_udev) {
- log_debug(_no_context_msg);
- return NULL;
- }
-
- return udev_get_dev_path(_udev);
-}
-
struct udev* udev_get_library_context(void)
{
return _udev;
@@ -96,10 +86,6 @@ int udev_is_running(void)
return 0;
}
-const char *udev_get_dev_dir(void)
-{
- return NULL;
-}
#endif
int lvm_getpagesize(void)
diff --git a/lib/misc/lvm-wrappers.h b/lib/misc/lvm-wrappers.h
index f5b381c..e43f831 100644
--- a/lib/misc/lvm-wrappers.h
+++ b/lib/misc/lvm-wrappers.h
@@ -24,7 +24,6 @@ struct udev *udev_get_library_context(void);
int udev_init_library_context(void);
void udev_fin_library_context(void);
int udev_is_running(void);
-const char *udev_get_dev_dir(void);
int lvm_getpagesize(void);
diff --git a/libdm/libdevmapper.h b/libdm/libdevmapper.h
index 7df4db8..1f780a3 100644
--- a/libdm/libdevmapper.h
+++ b/libdm/libdevmapper.h
@@ -1500,6 +1500,9 @@ struct dm_config_node *dm_config_clone_node(struct dm_config_tree *cft, const st
struct dm_pool *dm_config_memory(struct dm_config_tree *cft);
+/* Udev device directory. */
+#define DM_UDEV_DEV_DIR "/dev/"
+
/* Cookie prefixes.
*
* The cookie value consists of a prefix (16 bits) and a base (16 bits).
diff --git a/tools/dmsetup.c b/tools/dmsetup.c
index 6934de8..2787b76 100644
--- a/tools/dmsetup.c
+++ b/tools/dmsetup.c
@@ -1008,11 +1008,9 @@ static int _udevcookies(CMD_ARGS)
#else /* UDEV_SYNC_SUPPORT */
static int _set_up_udev_support(const char *dev_dir)
{
- struct udev *udev;
- const char *udev_dev_dir;
- size_t udev_dev_dir_len;
int dirs_diff;
const char *env;
+ size_t len = strlen(dev_dir), udev_dir_len = strlen(DM_UDEV_DEV_DIR);
if (_switches[NOUDEVSYNC_ARG])
dm_udev_set_sync_support(0);
@@ -1030,14 +1028,6 @@ static int _set_up_udev_support(const char *dev_dir)
" defined by --udevcookie option.",
_udev_cookie);
- if (!(udev = udev_new()) ||
- !(udev_dev_dir = udev_get_dev_path(udev)) ||
- !*udev_dev_dir) {
- log_error("Could not get udev dev path.");
- return 0;
- }
- udev_dev_dir_len = strlen(udev_dev_dir);
-
/*
* Normally, there's always a fallback action by libdevmapper if udev
* has not done its job correctly, e.g. the nodes were not created.
@@ -1049,12 +1039,17 @@ static int _set_up_udev_support(const char *dev_dir)
* is the same as "dev path" used by libdevmapper.
*/
- /* There's always a slash at the end of dev_dir. But check udev_dev_dir! */
- if (udev_dev_dir[udev_dev_dir_len - 1] != '/')
- dirs_diff = strncmp(dev_dir, udev_dev_dir, udev_dev_dir_len);
- else
- dirs_diff = strcmp(dev_dir, udev_dev_dir);
+ /*
+ * DM_UDEV_DEV_DIR always has '/' at its end.
+ * If the dev_dir does not have it, be sure
+ * to make the right comparison without the '/' char!
+ */
+ if (dev_dir[len - 1] != '/')
+ udev_dir_len--;
+
+ dirs_diff = udev_dir_len != len ||
+ strncmp(DM_UDEV_DEV_DIR, dev_dir, len);
_udev_only = !dirs_diff && (_udev_cookie || !_switches[VERIFYUDEV_ARG]);
if (dirs_diff) {
@@ -1064,11 +1059,10 @@ static int _set_up_udev_support(const char *dev_dir)
"about udev not working correctly while processing "
"particular nodes will be suppressed. These nodes "
"and symlinks will be managed in each directory "
- "separately.", dev_dir, udev_dev_dir);
+ "separately.", dev_dir, DM_UDEV_DEV_DIR);
dm_udev_set_checking(0);
}
- udev_unref(udev);
return 1;
}
--
1.7.2.1

View File

@ -0,0 +1,77 @@
From 6595cae6e9b65658430714b9731b604c036d0816 Mon Sep 17 00:00:00 2001
From: Zdenek Kabelac <zkabelac@redhat.com>
Date: Sat, 13 Oct 2012 18:51:07 +0000
Subject: cleanup: resolve dereferencing type-punned pointer
fix gcc warning:
dereferencing type-punned pointer will break strict-aliasing rules
Replace call by value and pass just const pointer to pvid.
---
diff --git a/lib/cache/lvmetad.c b/lib/cache/lvmetad.c
index 1a52787..a3b45d5 100644
--- a/lib/cache/lvmetad.c
+++ b/lib/cache/lvmetad.c
@@ -444,7 +444,7 @@ int lvmetad_vg_update(struct volume_group *vg)
dm_list_iterate_items(pvl, &vg->pvs) {
/* NB. the PV fmt pointer is sometimes wrong during vgconvert */
- if (pvl->pv->dev && !lvmetad_pv_found(pvl->pv->id, pvl->pv->dev,
+ if (pvl->pv->dev && !lvmetad_pv_found(&pvl->pv->id, pvl->pv->dev,
vg->fid ? vg->fid->fmt : pvl->pv->fmt,
pvl->pv->label_sector, NULL, NULL))
return 0;
@@ -657,7 +657,7 @@ static int _extract_mdas(struct lvmcache_info *info, struct dm_config_tree *cft,
return 1;
}
-int lvmetad_pv_found(struct id pvid, struct device *device, const struct format_type *fmt,
+int lvmetad_pv_found(const struct id *pvid, struct device *device, const struct format_type *fmt,
uint64_t label_sector, struct volume_group *vg, activation_handler handler)
{
char uuid[64];
@@ -670,7 +670,7 @@ int lvmetad_pv_found(struct id pvid, struct device *device, const struct format_
if (!lvmetad_active() || test_mode())
return 1;
- if (!id_write_format(&pvid, uuid, sizeof(uuid)))
+ if (!id_write_format(pvid, uuid, sizeof(uuid)))
return_0;
pvmeta = dm_config_create();
@@ -848,7 +848,7 @@ int lvmetad_pvscan_single(struct cmd_context *cmd, struct device *dev,
* *exact* image of the system, the lvmetad instance that went out of
* sync needs to be killed.
*/
- if (!lvmetad_pv_found(*(struct id *)dev->pvid, dev, lvmcache_fmt(info),
+ if (!lvmetad_pv_found((const struct id *) &dev->pvid, dev, lvmcache_fmt(info),
label->sector, baton.vg, handler)) {
release_vg(baton.vg);
goto_bad;
diff --git a/lib/cache/lvmetad.h b/lib/cache/lvmetad.h
index 724922d..5f0f552 100644
--- a/lib/cache/lvmetad.h
+++ b/lib/cache/lvmetad.h
@@ -93,7 +93,7 @@ int lvmetad_vg_remove(struct volume_group *vg);
* number on the cached and on the discovered PV match but the metadata content
* does not.
*/
-int lvmetad_pv_found(struct id pvid, struct device *device,
+int lvmetad_pv_found(const struct id *pvid, struct device *device,
const struct format_type *fmt, uint64_t label_sector,
struct volume_group *vg, activation_handler handler);
diff --git a/lib/metadata/metadata.c b/lib/metadata/metadata.c
index 5a633b6..c210a63 100644
--- a/lib/metadata/metadata.c
+++ b/lib/metadata/metadata.c
@@ -3807,7 +3807,7 @@ int pv_write(struct cmd_context *cmd __attribute__((unused)),
if (!pv->fmt->ops->pv_write(pv->fmt, pv))
return_0;
- if (!lvmetad_pv_found(pv->id, pv->dev, pv->fmt, pv->label_sector,
+ if (!lvmetad_pv_found(&pv->id, pv->dev, pv->fmt, pv->label_sector,
NULL, NULL))
return_0;
--
cgit v0.9.0.3

View File

@ -0,0 +1,37 @@
# /lib/rcscripts/addons/lvm-start.sh
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm2-start.sh,v 1.7 2007/10/04 16:06:22 cardoe Exp $
dm_in_proc() {
local retval=0
for x in devices misc ; do
grep -qs 'device-mapper' /proc/${x}
retval=$((${retval} + $?))
done
return ${retval}
}
# LVM support for /usr, /home, /opt ....
# This should be done *before* checking local
# volumes, or they never get checked.
# NOTE: Add needed modules for LVM or RAID, etc
# to /etc/modules.autoload if needed
if [ -z "${CDBOOT}" -a -x /sbin/vgscan ] ; then
if [ -e /proc/modules ] && ! dm_in_proc ; then
modprobe dm-mod 2>/dev/null
fi
if [ -d /proc/lvm ] || dm_in_proc ; then
ebegin "Setting up the Logical Volume Manager"
#still echo stderr for debugging
/sbin/vgscan --mknodes --ignorelockingfailure >/dev/null
if [ -x /sbin/vgchange ] && \
[ -f /etc/lvmtab -o -d /etc/lvm ]
then
/sbin/vgchange --ignorelockingfailure -a y >/dev/null
fi
eend $? "Failed to setup the LVM"
fi
fi
# vim:ts=4

View File

@ -0,0 +1,42 @@
# /lib/rcscripts/addons/lvm-start.sh
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm2-start.sh-2.02.49-r3,v 1.1 2009/08/07 21:02:28 robbat2 Exp $
config='global { locking_dir = "/dev/.lvm" }'
dm_in_proc() {
local retval=0
for x in devices misc ; do
grep -qs 'device-mapper' /proc/${x}
retval=$((${retval} + $?))
done
return ${retval}
}
# LVM support for /usr, /home, /opt ....
# This should be done *before* checking local
# volumes, or they never get checked.
# NOTE: Add needed modules for LVM or RAID, etc
# to /etc/modules.autoload if needed
if [ -z "${CDBOOT}" -a -x /sbin/vgscan ] ; then
if [ -e /proc/modules ] && ! dm_in_proc ; then
modprobe dm-mod 2>/dev/null
fi
if [ -d /proc/lvm ] || dm_in_proc ; then
ebegin "Setting up the Logical Volume Manager"
#still echo stderr for debugging
# Extra PV find pass because some devices might not have been available until very recently
/sbin/pvscan --config "${config}" >/dev/null
# Now make the nodes
/sbin/vgscan --mknodes --config "${config}" >/dev/null
if [ -x /sbin/vgchange ] && \
[ -f /etc/lvmtab -o -d /etc/lvm ]
then
/sbin/vgchange --config "${config}" -a y >/dev/null
fi
eend $? "Failed to setup the LVM"
fi
fi
# vim:ts=4

View File

@ -1,5 +1,5 @@
# /lib/rcscripts/addons/lvm-start.sh # /lib/rcscripts/addons/lvm-start.sh
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm2-start.sh-2.02.67-r1,v 1.1 2010/06/09 22:41:45 robbat2 Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm2-start.sh-2.02.67-r1,v 1.2 2012/03/27 03:20:56 robbat2 Exp $
config='global { locking_dir = "/dev/.lvm" }' config='global { locking_dir = "/dev/.lvm" }'
@ -39,4 +39,4 @@ if [ -z "${CDBOOT}" -a -x /sbin/vgscan ] ; then
fi fi
fi fi
# vim:ts=4 # vim:ts=4 ft=sh noet:

View File

@ -0,0 +1,46 @@
# /lib/rcscripts/addons/lvm-start.sh
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm2-start.sh-2.02.95,v 1.1 2012/03/27 03:20:56 robbat2 Exp $
config='global { locking_dir = "/dev/.lvm" }'
dm_in_proc() {
local retval=0
for x in devices misc ; do
grep -qs 'device-mapper' /proc/${x}
retval=$((${retval} + $?))
done
return ${retval}
}
# LVM support for /usr, /home, /opt ....
# This should be done *before* checking local
# volumes, or they never get checked.
# NOTE: Add needed modules for LVM or RAID, etc
# to /etc/modules.autoload if needed
for lvm_path in /bin/lvm /sbin/lvm ; do
[ -x "$lvm_path" ] && break
done
if [ -z "${CDBOOT}" -a -x "$lvm_path" ] ; then
if [ -e /proc/modules ] && ! dm_in_proc ; then
modprobe dm-mod 2>/dev/null
fi
if [ -d /proc/lvm ] || dm_in_proc ; then
ebegin "Setting up the Logical Volume Manager"
#still echo stderr for debugging
lvm_commands="#! ${lvm_path} --config '${config}'\n"
# Extra PV find pass because some devices might not have been available until very recently
lvm_commands="${lvm_commands}pvscan\n"
# Now make the nodes
lvm_commands="${lvm_commands}vgscan --mknodes\n"
# And turn them on!
lvm_commands="${lvm_commands}vgchange --sysinit -a ly\n"
# Order of this is important, have to work around dash and LVM readline
printf "%b\n" "${lvm_commands}" | $lvm_path /proc/self/fd/0 --config "${config}" >/dev/null
eend $? "Failed to setup the LVM"
fi
else
eerror "Cannot find lvm binary in /sbin or /bin!"
fi
# vim:ts=4 ft=sh noet:

View File

@ -0,0 +1,61 @@
# /lib/rcscripts/addons/lvm-stop.sh
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm2-stop.sh,v 1.6 2007/10/04 16:06:22 cardoe Exp $
# Stop LVM2
if [ -x /sbin/vgchange ] && \
[ -x /sbin/lvdisplay ] && \
[ -x /sbin/vgdisplay ] && \
[ -x /sbin/lvchange ] && \
[ -f /etc/lvmtab -o -d /etc/lvm ] && \
[ -d /proc/lvm -o "`grep device-mapper /proc/misc 2>/dev/null`" ]
then
einfo "Shutting down the Logical Volume Manager"
# If these commands fail it is not currently an issue
# as the system is going down anyway based on the current LVM
# functionality as described in this forum thread
#https://www.redhat.com/archives/linux-lvm/2001-May/msg00523.html
LOGICAL_VOLUMES=`lvdisplay |grep "LV Name"|sed -e 's/.*LV Name\s*\(.*\)/\1/'|sort`
VOLUME_GROUPS=`vgdisplay |grep "VG Name"|sed -e 's/.*VG Name\s*\(.*\)/\1/'|sort`
for x in ${LOGICAL_VOLUMES}
do
LV_IS_ACTIVE=`lvdisplay ${x}|grep "# open"|awk '{print $3}'`
if [ "${LV_IS_ACTIVE}" = 0 ]
then
ebegin " Shutting Down logical volume: ${x} "
lvchange -an --ignorelockingfailure -P ${x} >/dev/null
eend $?
fi
done
for x in ${VOLUME_GROUPS}
do
VG_HAS_ACTIVE_LV=`vgdisplay ${x}|grep "Open LV"|sed -e 's/.*Open LV\s*\(.*\)/\1/'`
if [ "${VG_HAS_ACTIVE_LV}" = 0 ]
then
ebegin " Shutting Down volume group: ${x} "
vgchange -an --ignorelockingfailure -P ${x} >/dev/null
eend
fi
done
for x in ${LOGICAL_VOLUMES}
do
LV_IS_ACTIVE=`lvdisplay ${x}|grep "# open"|sed -e 's/.*# open\s*\(.*\)/\1/'`
if [ "${LV_IS_ACTIVE}" = 1 ]
then
ROOT_DEVICE=`mount|grep " / "|awk '{print $1}'`
MOUNTED_DEVICE=${x}
[ -L ${ROOT_DEVICE} ] && ROOT_DEVICE="`/bin/readlink ${ROOT_DEVICE}`"
[ -L ${x} ] && MOUNTED_DEVICE="`/bin/readlink ${x}`"
if [ ! ${ROOT_DEVICE} = ${MOUNTED_DEVICE} ]
then
ewarn " Unable to shutdown: ${x} "
fi
fi
done
einfo "Finished Shutting down the Logical Volume Manager"
fi
# vim:ts=4

View File

@ -0,0 +1,67 @@
# /lib/rcscripts/addons/lvm-stop.sh
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/files/lvm2-stop.sh-2.02.49-r3,v 1.1 2009/08/07 21:02:28 robbat2 Exp $
config='global { locking_dir = "/dev/.lvm" }'
# Stop LVM2
if [ -x /sbin/vgchange ] && \
[ -x /sbin/lvdisplay ] && \
[ -x /sbin/vgdisplay ] && \
[ -x /sbin/lvchange ] && \
[ -f /etc/lvmtab -o -d /etc/lvm ] && \
[ -d /proc/lvm -o "`grep device-mapper /proc/misc 2>/dev/null`" ]
then
einfo "Shutting down the Logical Volume Manager"
# If these commands fail it is not currently an issue
# as the system is going down anyway based on the current LVM
# functionality as described in this forum thread
#https://www.redhat.com/archives/linux-lvm/2001-May/msg00523.html
LOGICAL_VOLUMES=`/sbin/lvdisplay --config "${config}" |grep "LV Name"|sed -e 's/.*LV Name\s*\(.*\)/\1/'|sort`
VOLUME_GROUPS=`/sbin/vgdisplay --config "${config}" |grep "VG Name"|sed -e 's/.*VG Name\s*\(.*\)/\1/'|sort`
for x in ${LOGICAL_VOLUMES}
do
LV_IS_ACTIVE=`/sbin/lvdisplay --config "${config}" ${x}|grep "# open"|awk '{print $3}'`
if [ "${LV_IS_ACTIVE}" = 0 ]
then
ebegin " Shutting Down logical volume: ${x} "
/sbin/lvchange -an --config "${config}" -P ${x} >/dev/null
eend $?
fi
done
for x in ${VOLUME_GROUPS}
do
VG_HAS_ACTIVE_LV=`/sbin/vgdisplay --config "${config}" ${x}|grep "Open LV"|sed -e 's/.*Open LV\s*\(.*\)/\1/'`
if [ "${VG_HAS_ACTIVE_LV}" = 0 ]
then
ebegin " Shutting Down volume group: ${x} "
/sbin/vgchange -an --config "${config}" -P ${x} >/dev/null
eend
fi
done
for x in ${LOGICAL_VOLUMES}
do
LV_IS_ACTIVE=`/sbin/lvdisplay --config "${config}" ${x}|grep "# open"|sed -e 's/.*# open\s*\(.*\)/\1/'`
if [ "${LV_IS_ACTIVE}" = 1 ]
then
if type mountinfo >/dev/null 2>&1; then
ROOT_DEVICE=`mountinfo -t /`
else
ROOT_DEVICE=`mount | awk '{if($3 == "/" && $1 != "rootfs"){print $1}}'`
fi
MOUNTED_DEVICE=${x}
[ -L ${ROOT_DEVICE} ] && ROOT_DEVICE="`/bin/readlink ${ROOT_DEVICE}`"
[ -L ${x} ] && MOUNTED_DEVICE="`/bin/readlink ${x}`"
if [ ! ${ROOT_DEVICE} = ${MOUNTED_DEVICE} ]
then
ewarn " Unable to shutdown: ${x} "
fi
fi
done
einfo "Finished Shutting down the Logical Volume Manager"
fi
# vim:ts=4

View File

@ -0,0 +1,43 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.01.13.ebuild,v 1.7 2012/07/05 08:56:14 ssuominen Exp $
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~mips ~ppc ~ppc64 ~sparc ~x86"
IUSE="readline nolvmstatic"
DEPEND=">=sys-fs/device-mapper-1.01"
RDEPEND="${DEPEND}
!sys-fs/lvm-user"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
src_compile() {
# Static compile of lvm2 so that the install described in the handbook works
# http://www.gentoo.org/doc/en/lvm2.xml
# fixes http://bugs.gentoo.org/show_bug.cgi?id=84463
local myconf
use nolvmstatic || myconf="--enable-static_link"
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
econf $(use_enable readline) ${myconf}
emake || die "compile problem"
}
src_install() {
einstall sbindir="${D}/sbin" staticdir="${D}/sbin" confdir="${D}/etc/lvm"
mv -f "${D}/sbin/lvm.static" "${D}/sbin/lvm"
dodoc COPYING* INSTALL README VERSION WHATS_NEW doc/*.{conf,c,txt}
insinto /lib/rcscripts/addons
newins "${FILESDIR}"/lvm2-start.sh lvm-start.sh
newins "${FILESDIR}"/lvm2-stop.sh lvm-stop.sh
}

View File

@ -0,0 +1,257 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.67-r2.ebuild,v 1.12 2012/12/11 21:48:10 ssuominen Exp $
EAPI=2
inherit eutils multilib toolchain-funcs autotools linux-info
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm ~hppa ia64 ~mips ppc ppc64 s390 sh sparc x86"
IUSE="readline +static clvm cman +lvm1 selinux"
DEPEND_COMMON="!!sys-fs/device-mapper
clvm? ( =sys-cluster/dlm-2*
cman? ( =sys-cluster/cman-2* ) )
<virtual/udev-196"
RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.4
!!sys-fs/lvm-user
!!sys-fs/clvm
>=sys-apps/util-linux-2.16"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
pkg_setup() {
local CONFIG_CHECK="~SYSVIPC"
local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n"
check_extra_config
# 1. Genkernel no longer copies /sbin/lvm blindly.
# 2. There are no longer any linking deps in /usr.
if use static; then
elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
elog "their static versions. If you need the static binaries,"
elog "you must append .static the filename!"
fi
}
src_unpack() {
unpack ${A}
}
src_prepare() {
epatch "${FILESDIR}"/lvm.conf-2.02.67.patch
# Should not be needed due to upstream re-arrangement of build
#epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
# Should not be need with new upstream udev rules
#epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
# Fixed differently upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
# bug 318513
epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch
# bug 301331
epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch
eautoreconf
}
src_configure() {
local myconf
local buildmode
myconf="${myconf} --enable-dmeventd"
myconf="${myconf} --enable-cmdlib"
myconf="${myconf} --enable-applib"
myconf="${myconf} --enable-fsadm"
# Most of this package does weird stuff.
# The build options are tristate, and --without is NOT supported
# options: 'none', 'internal', 'shared'
if use static ; then
einfo "Building static LVM, for usage inside genkernel"
buildmode="internal"
# This only causes the .static versions to become available
# For recent systems, there are no linkages against anything in /usr anyway.
# We explicitly provide the .static versions so that they can be included in
# initramfs environments.
myconf="${myconf} --enable-static_link"
else
ewarn "Building shared LVM, it will not work inside genkernel!"
buildmode="shared"
fi
# dmeventd requires mirrors to be internal, and snapshot available
# so we cannot disable them
myconf="${myconf} --with-mirrors=internal"
myconf="${myconf} --with-snapshots=internal"
if use lvm1 ; then
myconf="${myconf} --with-lvm1=${buildmode}"
else
myconf="${myconf} --with-lvm1=none"
fi
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
if use clvm; then
myconf="${myconf} --with-cluster=${buildmode}"
# 4-state! Make sure we get it right, per bug 210879
# Valid options are: none, cman, gulm, all
#
# 2009/02:
# gulm is removed now, now dual-state:
# cman, none
# all still exists, but is not needed
#
# 2009/07:
# TODO: add corosync and re-enable ALL
local clvmd=""
use cman && clvmd="cman"
#clvmd="${clvmd/cmangulm/all}"
[ -z "${clvmd}" ] && clvmd="none"
myconf="${myconf} --with-clvmd=${clvmd}"
myconf="${myconf} --with-pool=${buildmode}"
else
myconf="${myconf} --with-clvmd=none --with-cluster=none"
fi
myconf="${myconf}
--sbindir=/sbin
--with-staticdir=/sbin
--with-dmeventd-path=/sbin/dmeventd"
econf $(use_enable readline) \
$(use_enable selinux) \
--enable-pkgconfig \
--libdir=/$(get_libdir) \
--with-usrlibdir=/usr/$(get_libdir) \
--enable-udev_rules \
--enable-udev_sync \
--with-udevdir=/lib/udev/rules.d/ \
${myconf} \
CLDFLAGS="${LDFLAGS}" || die
}
src_compile() {
einfo "Doing symlinks"
pushd include
emake || die "Failed to prepare symlinks"
popd
einfo "Starting main build"
emake || die "compile fail"
}
src_install() {
emake DESTDIR="${D}" install || die "Failed to emake install"
# All of this was change by upstream, and if we don't get any problems, we
# can probably drop it in .65
#X## Revamp all of our library handling for bug #316571
#X## Upstream build script puts a lot of this stuff into /usr/lib regardless of
#X## libdir variable.
#X#dodir /$(get_libdir)
#X## .so -> /$(get_libdir)
#X#mv -f "${D}"/usr/lib/lib*.so* "${D}"/$(get_libdir)
#X#[[ "$(get_libdir)" != "lib" ]] && \
#X# mv "${D}"/usr/$(get_libdir)/lib*.so* "${D}"/$(get_libdir)
#X## .a -> /usr/$(get_libdir)
#X#[[ "$(get_libdir)" != "lib" ]] && \
#X# mv -f "${D}"/usr/lib/lib*.a "${D}"/usr/$(get_libdir)
#X## The upstream symlinks are borked. lets rebuild them instead.
#X#find "${D}"/{usr,}/{lib,$(get_libdir)} -type l \
#X# | xargs rm -f 2>/dev/null
#X#for i in "${D}"/$(get_libdir)/*.so.* ; do
#X# b="${i//*\/}" o="${b/.so.*/.so}"
#X# ln -s "${b}" "${D}/$(get_libdir)/${o}"
#X#done
#X## Now enable building properly
#X#for i in \
#X# libdevmapper-event{,-lvm2{,mirror,snapshot}} \
#X# libdevmapper \
#X# liblvm2{format1,snapshot,cmd,app} \
#X# ; do
#X# gen_usr_ldscript ${i}.so || die
#X#done
dodoc README VERSION WHATS_NEW doc/*.{conf,c,txt}
insinto /$(get_libdir)/rcscripts/addons
newins "${FILESDIR}"/lvm2-start.sh-2.02.67-r1 lvm-start.sh || die
newins "${FILESDIR}"/lvm2-stop.sh-2.02.67-r1 lvm-stop.sh || die
newinitd "${FILESDIR}"/lvm.rc-2.02.67-r1 lvm || die
newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring || die
newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm || die
if use clvm; then
newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd || die
newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd || die
fi
# move shared libs to /lib(64)
dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
#gen_usr_ldscript libdevmapper.so
dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
insinto /etc
doins "${FILESDIR}"/dmtab
insinto /$(get_libdir)/rcscripts/addons
doins "${FILESDIR}"/dm-start.sh
# Device mapper stuff
newinitd "${FILESDIR}"/device-mapper.rc-2.02.67-r1 device-mapper || die
newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper || die
newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd || die
dolib.a daemons/dmeventd/libdevmapper-event.a \
|| die "dolib.a libdevmapper-event.a"
#gen_usr_ldscript libdevmapper-event.so
#insinto /etc/udev/rules.d/
#newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules || die
# do not rely on /lib -> /libXX link
sed -e "s-/lib/rcscripts/-/$(get_libdir)/rcscripts/-" -i "${D}"/etc/init.d/*
elog "USE flag nocman is deprecated and replaced"
elog "with the cman USE flag."
elog ""
elog "USE flags clvm and cman are masked"
elog "by default and need to be unmasked to use them"
elog ""
elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
}
pkg_postinst() {
elog "lvm volumes are no longer automatically created for"
elog "baselayout-2 users. If you are using baselayout-2, be sure to"
elog "run: # rc-update add lvm boot"
elog "Do NOT add it if you are using baselayout-1 still."
}
src_test() {
einfo "Testcases disabled because of device-node mucking"
einfo "If you want them, compile the package and see ${S}/tests"
}

View File

@ -0,0 +1,271 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.73-r1.ebuild,v 1.14 2012/12/11 21:48:10 ssuominen Exp $
EAPI=2
inherit eutils multilib toolchain-funcs autotools linux-info
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 s390 sh sparc x86"
IUSE="readline +static clvm cman +lvm1 selinux"
DEPEND_COMMON="!!sys-fs/device-mapper
readline? ( sys-libs/readline )
clvm? ( =sys-cluster/dlm-2*
cman? ( =sys-cluster/cman-2* ) )
<virtual/udev-196"
RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.4
!!sys-fs/lvm-user
!!sys-fs/clvm
>=sys-apps/util-linux-2.16"
# Upgrading to this LVM will break older cryptsetup
RDEPEND="${RDEPEND}
!<sys-fs/cryptsetup-1.1.2"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig
>=sys-devel/binutils-2.20.1-r1"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
pkg_setup() {
local CONFIG_CHECK="~SYSVIPC"
local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n"
check_extra_config
# 1. Genkernel no longer copies /sbin/lvm blindly.
# 2. There are no longer any linking deps in /usr.
if use static; then
elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
elog "their static versions. If you need the static binaries,"
elog "you must append .static the filename!"
fi
}
src_unpack() {
unpack ${A}
}
src_prepare() {
epatch "${FILESDIR}"/lvm.conf-2.02.67.patch
# Should not be needed due to upstream re-arrangement of build
#epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
# Should not be need with new upstream udev rules
#epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
# Fixed differently upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
# bug 318513
epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch
# bug 301331
epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch
# bug 330373
epatch "${FILESDIR}"/${PN}-2.02.73-locale-muck.patch
# --as-needed
epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch
# bug 332905
epatch "${FILESDIR}"/${PN}-2.02.72-dynamic-static-ldflags.patch
epatch "${FILESDIR}"/${PN}-2.02.73-asneeded.patch
eautoreconf
}
src_configure() {
local myconf
local buildmode
myconf="${myconf} --enable-dmeventd"
myconf="${myconf} --enable-cmdlib"
myconf="${myconf} --enable-applib"
myconf="${myconf} --enable-fsadm"
# Most of this package does weird stuff.
# The build options are tristate, and --without is NOT supported
# options: 'none', 'internal', 'shared'
if use static ; then
einfo "Building static LVM, for usage inside genkernel"
buildmode="internal"
# This only causes the .static versions to become available
# For recent systems, there are no linkages against anything in /usr anyway.
# We explicitly provide the .static versions so that they can be included in
# initramfs environments.
myconf="${myconf} --enable-static_link"
else
ewarn "Building shared LVM, it will not work inside genkernel!"
buildmode="shared"
fi
# dmeventd requires mirrors to be internal, and snapshot available
# so we cannot disable them
myconf="${myconf} --with-mirrors=internal"
myconf="${myconf} --with-snapshots=internal"
if use lvm1 ; then
myconf="${myconf} --with-lvm1=${buildmode}"
else
myconf="${myconf} --with-lvm1=none"
fi
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
if use clvm; then
myconf="${myconf} --with-cluster=${buildmode}"
# 4-state! Make sure we get it right, per bug 210879
# Valid options are: none, cman, gulm, all
#
# 2009/02:
# gulm is removed now, now dual-state:
# cman, none
# all still exists, but is not needed
#
# 2009/07:
# TODO: add corosync and re-enable ALL
local clvmd=""
use cman && clvmd="cman"
#clvmd="${clvmd/cmangulm/all}"
[ -z "${clvmd}" ] && clvmd="none"
myconf="${myconf} --with-clvmd=${clvmd}"
myconf="${myconf} --with-pool=${buildmode}"
else
myconf="${myconf} --with-clvmd=none --with-cluster=none"
fi
myconf="${myconf}
--sbindir=/sbin
--with-staticdir=/sbin
--with-dmeventd-path=/sbin/dmeventd"
econf $(use_enable readline) \
$(use_enable selinux) \
--enable-pkgconfig \
--libdir=/$(get_libdir) \
--with-usrlibdir=/usr/$(get_libdir) \
--enable-udev_rules \
--enable-udev_sync \
--with-udevdir=/lib/udev/rules.d/ \
${myconf} \
CLDFLAGS="${LDFLAGS}" || die
}
src_compile() {
einfo "Doing symlinks"
pushd include
emake || die "Failed to prepare symlinks"
popd
einfo "Starting main build"
emake || die "compile fail"
}
src_install() {
emake DESTDIR="${D}" install || die "Failed to emake install"
# All of this was change by upstream, and if we don't get any problems, we
# can probably drop it in .65
#X## Revamp all of our library handling for bug #316571
#X## Upstream build script puts a lot of this stuff into /usr/lib regardless of
#X## libdir variable.
#X#dodir /$(get_libdir)
#X## .so -> /$(get_libdir)
#X#mv -f "${D}"/usr/lib/lib*.so* "${D}"/$(get_libdir)
#X#[[ "$(get_libdir)" != "lib" ]] && \
#X# mv "${D}"/usr/$(get_libdir)/lib*.so* "${D}"/$(get_libdir)
#X## .a -> /usr/$(get_libdir)
#X#[[ "$(get_libdir)" != "lib" ]] && \
#X# mv -f "${D}"/usr/lib/lib*.a "${D}"/usr/$(get_libdir)
#X## The upstream symlinks are borked. lets rebuild them instead.
#X#find "${D}"/{usr,}/{lib,$(get_libdir)} -type l \
#X# | xargs rm -f 2>/dev/null
#X#for i in "${D}"/$(get_libdir)/*.so.* ; do
#X# b="${i//*\/}" o="${b/.so.*/.so}"
#X# ln -s "${b}" "${D}/$(get_libdir)/${o}"
#X#done
#X## Now enable building properly
#X#for i in \
#X# libdevmapper-event{,-lvm2{,mirror,snapshot}} \
#X# libdevmapper \
#X# liblvm2{format1,snapshot,cmd,app} \
#X# ; do
#X# gen_usr_ldscript ${i}.so || die
#X#done
dodoc README VERSION WHATS_NEW doc/*.{conf,c,txt}
insinto /$(get_libdir)/rcscripts/addons
newins "${FILESDIR}"/lvm2-start.sh-2.02.67-r1 lvm-start.sh || die
newins "${FILESDIR}"/lvm2-stop.sh-2.02.67-r1 lvm-stop.sh || die
newinitd "${FILESDIR}"/lvm.rc-2.02.67-r1 lvm || die
newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring || die
newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm || die
if use clvm; then
newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd || die
newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd || die
fi
# move shared libs to /lib(64)
dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
#gen_usr_ldscript libdevmapper.so
dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
insinto /etc
doins "${FILESDIR}"/dmtab
insinto /$(get_libdir)/rcscripts/addons
doins "${FILESDIR}"/dm-start.sh
# Device mapper stuff
newinitd "${FILESDIR}"/device-mapper.rc-2.02.67-r1 device-mapper || die
newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper || die
newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd || die
dolib.a daemons/dmeventd/libdevmapper-event.a \
|| die "dolib.a libdevmapper-event.a"
#gen_usr_ldscript libdevmapper-event.so
#insinto /etc/udev/rules.d/
#newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules || die
# do not rely on /lib -> /libXX link
sed -e "s-/lib/rcscripts/-/$(get_libdir)/rcscripts/-" -i "${D}"/etc/init.d/*
elog "USE flag nocman is deprecated and replaced"
elog "with the cman USE flag."
elog ""
elog "USE flags clvm and cman are masked"
elog "by default and need to be unmasked to use them"
elog ""
elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
}
pkg_postinst() {
elog "lvm volumes are no longer automatically created for"
elog "baselayout-2 users. If you are using baselayout-2, be sure to"
elog "run: # rc-update add lvm boot"
elog "Do NOT add it if you are using baselayout-1 still."
}
src_test() {
einfo "Testcases disabled because of device-node mucking"
einfo "If you want them, compile the package and see ${S}/tests"
}

View File

@ -0,0 +1,267 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.73.ebuild,v 1.11 2012/12/11 21:48:10 ssuominen Exp $
EAPI=2
inherit eutils multilib toolchain-funcs autotools linux-info
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm ~hppa ia64 ~mips ~ppc ~ppc64 s390 sh sparc x86"
IUSE="readline +static clvm cman +lvm1 selinux"
DEPEND_COMMON="!!sys-fs/device-mapper
clvm? ( =sys-cluster/dlm-2*
cman? ( =sys-cluster/cman-2* ) )
<virtual/udev-196"
RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.4
!!sys-fs/lvm-user
!!sys-fs/clvm
>=sys-apps/util-linux-2.16"
# Upgrading to this LVM will break older cryptsetup
RDEPEND="${RDEPEND}
!<sys-fs/cryptsetup-1.1.2"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
pkg_setup() {
local CONFIG_CHECK="~SYSVIPC"
local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n"
check_extra_config
# 1. Genkernel no longer copies /sbin/lvm blindly.
# 2. There are no longer any linking deps in /usr.
if use static; then
elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
elog "their static versions. If you need the static binaries,"
elog "you must append .static the filename!"
fi
}
src_unpack() {
unpack ${A}
}
src_prepare() {
epatch "${FILESDIR}"/lvm.conf-2.02.67.patch
# Should not be needed due to upstream re-arrangement of build
#epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
# Should not be need with new upstream udev rules
#epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
# Fixed differently upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
# bug 318513
epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch
# bug 301331
epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch
# bug 330373
epatch "${FILESDIR}"/${PN}-2.02.73-locale-muck.patch
# --as-needed
epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch
# bug 332905
epatch "${FILESDIR}"/${PN}-2.02.72-dynamic-static-ldflags.patch
eautoreconf
}
src_configure() {
local myconf
local buildmode
myconf="${myconf} --enable-dmeventd"
myconf="${myconf} --enable-cmdlib"
myconf="${myconf} --enable-applib"
myconf="${myconf} --enable-fsadm"
# Most of this package does weird stuff.
# The build options are tristate, and --without is NOT supported
# options: 'none', 'internal', 'shared'
if use static ; then
einfo "Building static LVM, for usage inside genkernel"
buildmode="internal"
# This only causes the .static versions to become available
# For recent systems, there are no linkages against anything in /usr anyway.
# We explicitly provide the .static versions so that they can be included in
# initramfs environments.
myconf="${myconf} --enable-static_link"
else
ewarn "Building shared LVM, it will not work inside genkernel!"
buildmode="shared"
fi
# dmeventd requires mirrors to be internal, and snapshot available
# so we cannot disable them
myconf="${myconf} --with-mirrors=internal"
myconf="${myconf} --with-snapshots=internal"
if use lvm1 ; then
myconf="${myconf} --with-lvm1=${buildmode}"
else
myconf="${myconf} --with-lvm1=none"
fi
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
if use clvm; then
myconf="${myconf} --with-cluster=${buildmode}"
# 4-state! Make sure we get it right, per bug 210879
# Valid options are: none, cman, gulm, all
#
# 2009/02:
# gulm is removed now, now dual-state:
# cman, none
# all still exists, but is not needed
#
# 2009/07:
# TODO: add corosync and re-enable ALL
local clvmd=""
use cman && clvmd="cman"
#clvmd="${clvmd/cmangulm/all}"
[ -z "${clvmd}" ] && clvmd="none"
myconf="${myconf} --with-clvmd=${clvmd}"
myconf="${myconf} --with-pool=${buildmode}"
else
myconf="${myconf} --with-clvmd=none --with-cluster=none"
fi
myconf="${myconf}
--sbindir=/sbin
--with-staticdir=/sbin
--with-dmeventd-path=/sbin/dmeventd"
econf $(use_enable readline) \
$(use_enable selinux) \
--enable-pkgconfig \
--libdir=/$(get_libdir) \
--with-usrlibdir=/usr/$(get_libdir) \
--enable-udev_rules \
--enable-udev_sync \
--with-udevdir=/lib/udev/rules.d/ \
${myconf} \
CLDFLAGS="${LDFLAGS}" || die
}
src_compile() {
einfo "Doing symlinks"
pushd include
emake || die "Failed to prepare symlinks"
popd
einfo "Starting main build"
emake || die "compile fail"
}
src_install() {
emake DESTDIR="${D}" install || die "Failed to emake install"
# All of this was change by upstream, and if we don't get any problems, we
# can probably drop it in .65
#X## Revamp all of our library handling for bug #316571
#X## Upstream build script puts a lot of this stuff into /usr/lib regardless of
#X## libdir variable.
#X#dodir /$(get_libdir)
#X## .so -> /$(get_libdir)
#X#mv -f "${D}"/usr/lib/lib*.so* "${D}"/$(get_libdir)
#X#[[ "$(get_libdir)" != "lib" ]] && \
#X# mv "${D}"/usr/$(get_libdir)/lib*.so* "${D}"/$(get_libdir)
#X## .a -> /usr/$(get_libdir)
#X#[[ "$(get_libdir)" != "lib" ]] && \
#X# mv -f "${D}"/usr/lib/lib*.a "${D}"/usr/$(get_libdir)
#X## The upstream symlinks are borked. lets rebuild them instead.
#X#find "${D}"/{usr,}/{lib,$(get_libdir)} -type l \
#X# | xargs rm -f 2>/dev/null
#X#for i in "${D}"/$(get_libdir)/*.so.* ; do
#X# b="${i//*\/}" o="${b/.so.*/.so}"
#X# ln -s "${b}" "${D}/$(get_libdir)/${o}"
#X#done
#X## Now enable building properly
#X#for i in \
#X# libdevmapper-event{,-lvm2{,mirror,snapshot}} \
#X# libdevmapper \
#X# liblvm2{format1,snapshot,cmd,app} \
#X# ; do
#X# gen_usr_ldscript ${i}.so || die
#X#done
dodoc README VERSION WHATS_NEW doc/*.{conf,c,txt}
insinto /$(get_libdir)/rcscripts/addons
newins "${FILESDIR}"/lvm2-start.sh-2.02.67-r1 lvm-start.sh || die
newins "${FILESDIR}"/lvm2-stop.sh-2.02.67-r1 lvm-stop.sh || die
newinitd "${FILESDIR}"/lvm.rc-2.02.67-r1 lvm || die
newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring || die
newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm || die
if use clvm; then
newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd || die
newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd || die
fi
# move shared libs to /lib(64)
dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
#gen_usr_ldscript libdevmapper.so
dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
insinto /etc
doins "${FILESDIR}"/dmtab
insinto /$(get_libdir)/rcscripts/addons
doins "${FILESDIR}"/dm-start.sh
# Device mapper stuff
newinitd "${FILESDIR}"/device-mapper.rc-2.02.67-r1 device-mapper || die
newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper || die
newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd || die
dolib.a daemons/dmeventd/libdevmapper-event.a \
|| die "dolib.a libdevmapper-event.a"
#gen_usr_ldscript libdevmapper-event.so
#insinto /etc/udev/rules.d/
#newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules || die
# do not rely on /lib -> /libXX link
sed -e "s-/lib/rcscripts/-/$(get_libdir)/rcscripts/-" -i "${D}"/etc/init.d/*
elog "USE flag nocman is deprecated and replaced"
elog "with the cman USE flag."
elog ""
elog "USE flags clvm and cman are masked"
elog "by default and need to be unmasked to use them"
elog ""
elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
}
pkg_postinst() {
elog "lvm volumes are no longer automatically created for"
elog "baselayout-2 users. If you are using baselayout-2, be sure to"
elog "run: # rc-update add lvm boot"
elog "Do NOT add it if you are using baselayout-1 still."
}
src_test() {
einfo "Testcases disabled because of device-node mucking"
einfo "If you want them, compile the package and see ${S}/tests"
}

View File

@ -1,6 +1,6 @@
# Copyright 1999-2012 Gentoo Foundation # Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2 # Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.88.ebuild,v 1.11 2012/02/25 15:17:50 ssuominen Exp $ # $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.88.ebuild,v 1.16 2012/12/10 20:41:45 axs Exp $
EAPI=3 EAPI=3
inherit eutils multilib toolchain-funcs autotools linux-info inherit eutils multilib toolchain-funcs autotools linux-info
@ -20,7 +20,7 @@ DEPEND_COMMON="!!sys-fs/device-mapper
readline? ( sys-libs/readline ) readline? ( sys-libs/readline )
clvm? ( =sys-cluster/dlm-2* clvm? ( =sys-cluster/dlm-2*
cman? ( =sys-cluster/cman-2* ) ) cman? ( =sys-cluster/cman-2* ) )
>=sys-fs/udev-151-r4" <virtual/udev-196"
RDEPEND="${DEPEND_COMMON} RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.4 !<sys-apps/openrc-0.4
@ -33,7 +33,7 @@ RDEPEND="${RDEPEND}
!<sys-fs/cryptsetup-1.1.2" !<sys-fs/cryptsetup-1.1.2"
DEPEND="${DEPEND_COMMON} DEPEND="${DEPEND_COMMON}
dev-util/pkgconfig virtual/pkgconfig
>=sys-devel/binutils-2.20.1-r1" >=sys-devel/binutils-2.20.1-r1"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}" S="${WORKDIR}/${PN/lvm/LVM}.${PV}"

View File

@ -0,0 +1,270 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.95-r4.ebuild,v 1.2 2012/11/28 10:55:33 ssuominen Exp $
EAPI=3
inherit eutils multilib toolchain-funcs autotools linux-info
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="readline static static-libs clvm cman +lvm1 selinux +udev +thin"
DEPEND_COMMON="!!sys-fs/device-mapper
readline? ( sys-libs/readline )
clvm? ( =sys-cluster/libdlm-3*
cman? ( =sys-cluster/cman-3* ) )
udev? ( virtual/udev )"
# /run is now required for locking during early boot. /var cannot be assumed to
# be available.
RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.10.1
>=sys-apps/baselayout-2.1-r1
!!sys-fs/lvm-user
!!sys-fs/clvm
>=sys-apps/util-linux-2.16
thin? ( sys-block/thin-provisioning-tools )"
# Upgrading to this LVM will break older cryptsetup
RDEPEND="${RDEPEND}
!<sys-fs/cryptsetup-1.1.2"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig
>=sys-devel/binutils-2.20.1-r1
static? ( virtual/udev[static-libs] )"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
pkg_setup() {
local CONFIG_CHECK="~SYSVIPC"
use udev && local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n"
check_extra_config
# 1. Genkernel no longer copies /sbin/lvm blindly.
if use static; then
elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
elog "their static versions. If you need the static binaries,"
elog "you must append .static to the filename!"
fi
}
src_unpack() {
unpack ${A}
}
src_prepare() {
epatch "${FILESDIR}"/lvm.conf-2.02.67.patch
# Should not be needed due to upstream re-arrangement of build
#epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
# Should not be need with new upstream udev rules
#epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
# Fixed differently upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
# bug 318513 - merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch
# bug 301331
epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch
# bug 330373
epatch "${FILESDIR}"/${PN}-2.02.92-locale-muck.patch
# --as-needed
epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch
# bug 332905
epatch "${FILESDIR}"/${PN}-2.02.92-dynamic-static-ldflags.patch
# bug 361429 - merged upstream in .85
#epatch "${FILESDIR}"/${PN}-2.02.84-udev-pkgconfig.patch
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.73-asneeded.patch
epatch "${FILESDIR}"/${PN}-2.02.88-respect-cc.patch
# Upstream bug of LVM path
epatch "${FILESDIR}"/${PN}-2.02.95-lvmpath.patch
# Upstream patch for http://bugs.gentoo.org/424810
epatch "${FILESDIR}"/${PN}-2.02.95-udev185.patch
eautoreconf
}
src_configure() {
local myconf
local buildmode
myconf="${myconf} --enable-dmeventd"
myconf="${myconf} --enable-cmdlib"
myconf="${myconf} --enable-applib"
myconf="${myconf} --enable-fsadm"
myconf="${myconf} --enable-lvmetad"
# Most of this package does weird stuff.
# The build options are tristate, and --without is NOT supported
# options: 'none', 'internal', 'shared'
if use static ; then
einfo "Building static LVM, for usage inside genkernel"
buildmode="internal"
# This only causes the .static versions to become available
# We explicitly provide the .static versions so that they can be included in
# initramfs environments.
myconf="${myconf} --enable-static_link"
else
ewarn "Building shared LVM, it will not work inside genkernel!"
buildmode="shared"
fi
# dmeventd requires mirrors to be internal, and snapshot available
# so we cannot disable them
myconf="${myconf} --with-mirrors=internal"
myconf="${myconf} --with-snapshots=internal"
use thin \
&& myconf="${myconf} --with-thin=internal" \
|| myconf="${myconf} --with-thin=none"
if use lvm1 ; then
myconf="${myconf} --with-lvm1=${buildmode}"
else
myconf="${myconf} --with-lvm1=none"
fi
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
if use clvm; then
myconf="${myconf} --with-cluster=${buildmode}"
# 4-state! Make sure we get it right, per bug 210879
# Valid options are: none, cman, gulm, all
#
# 2009/02:
# gulm is removed now, now dual-state:
# cman, none
# all still exists, but is not needed
#
# 2009/07:
# TODO: add corosync and re-enable ALL
local clvmd=""
use cman && clvmd="cman"
#clvmd="${clvmd/cmangulm/all}"
[ -z "${clvmd}" ] && clvmd="none"
myconf="${myconf} --with-clvmd=${clvmd}"
myconf="${myconf} --with-pool=${buildmode}"
else
myconf="${myconf} --with-clvmd=none --with-cluster=none"
fi
local udevdir="${EPREFIX}/lib/udev/rules.d"
use udev && udevdir="${EPREFIX}$($(tc-getPKG_CONFIG) --variable=udevdir udev)/rules.d"
econf \
$(use_enable readline) \
$(use_enable selinux) \
--enable-pkgconfig \
--with-confdir="${EPREFIX}/etc" \
--sbindir="${EPREFIX}/sbin" \
--with-staticdir="${EPREFIX}/sbin" \
--libdir="${EPREFIX}/$(get_libdir)" \
--with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" \
--with-default-run-dir=/run/lvm \
--with-default-locking-dir=/run/lock/lvm \
--with-dmeventd-path=/sbin/dmeventd \
$(use_enable udev udev_rules) \
$(use_enable udev udev_sync) \
$(use_with udev udevdir "${udevdir}") \
${myconf} \
CLDFLAGS="${LDFLAGS}"
}
src_compile() {
einfo "Doing symlinks"
pushd include
emake || die "Failed to prepare symlinks"
popd
einfo "Starting main build"
emake || die "compile fail"
}
src_install() {
emake DESTDIR="${D}" install || die "Failed to emake install"
dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{conf,c,txt}
newinitd "${FILESDIR}"/lvm.rc-2.02.95-r2 lvm || die
newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring || die
newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm || die
if use clvm; then
newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd || die
newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd || die
fi
# move shared libs to /lib(64)
if use static-libs; then
dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
#gen_usr_ldscript libdevmapper.so
fi
dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
insinto /etc
doins "${FILESDIR}"/dmtab
# Device mapper stuff
newinitd "${FILESDIR}"/device-mapper.rc-2.02.95-r2 device-mapper || die
newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper || die
newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd || die
if use static-libs; then
dolib.a daemons/dmeventd/libdevmapper-event.a \
|| die "dolib.a libdevmapper-event.a"
#gen_usr_ldscript libdevmapper-event.so
fi
use static-libs || \
rm -f "${D}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a
#insinto /etc/udev/rules.d/
#newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules || die
# do not rely on /lib -> /libXX link
sed -i \
-e "s|/lib/rcscripts/|/$(get_libdir)/rcscripts/|" \
"${ED}"/etc/init.d/* || die
elog "USE flag nocman is deprecated and replaced"
elog "with the cman USE flag."
elog ""
elog "USE flags clvm and cman are masked"
elog "by default and need to be unmasked to be used"
elog ""
elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
}
pkg_postinst() {
elog "lvm volumes are no longer automatically created for"
elog "baselayout-2 users. If you are using baselayout-2, be sure to"
elog "run: # rc-update add lvm boot"
elog "Do NOT add it if you are still using baselayout-1."
}
src_test() {
einfo "Testcases disabled because of device-node mucking"
einfo "If you want them, compile the package and see ${S}/tests"
}

View File

@ -0,0 +1,281 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.97-r1.ebuild,v 1.10 2013/01/20 19:49:52 ago Exp $
EAPI=5
inherit eutils multilib toolchain-funcs autotools linux-info udev
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="alpha amd64 arm ~hppa ia64 ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-linux ~x86-linux"
IUSE="readline static static-libs clvm cman +lvm1 selinux +udev +thin"
DEPEND_COMMON="!!sys-fs/device-mapper
readline? ( sys-libs/readline )
clvm? ( =sys-cluster/libdlm-3*
cman? ( =sys-cluster/cman-3* ) )
udev? ( virtual/udev )"
# /run is now required for locking during early boot. /var cannot be assumed to
# be available.
RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.10.1
>=sys-apps/baselayout-2.1-r1
!!sys-fs/lvm-user
!!sys-fs/clvm
>=sys-apps/util-linux-2.16
thin? ( sys-block/thin-provisioning-tools )"
# Upgrading to this LVM will break older cryptsetup
RDEPEND="${RDEPEND}
!<sys-fs/cryptsetup-1.1.2"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig
>=sys-devel/binutils-2.20.1-r1
static? ( virtual/udev[static-libs] )"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
pkg_setup() {
local CONFIG_CHECK="~SYSVIPC"
use udev && local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n"
check_extra_config
# 1. Genkernel no longer copies /sbin/lvm blindly.
if use static; then
elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
elog "their static versions. If you need the static binaries,"
elog "you must append .static to the filename!"
fi
}
src_unpack() {
unpack ${A}
}
src_prepare() {
epatch "${FILESDIR}"/lvm.conf-2.02.67.patch
# Should not be needed due to upstream re-arrangement of build
#epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
# Should not be need with new upstream udev rules
#epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
# Fixed differently upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
# bug 318513 - merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch
# bug 301331
epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch
# bug 330373
epatch "${FILESDIR}"/${PN}-2.02.92-locale-muck.patch
# --as-needed
epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch
# bug 332905
epatch "${FILESDIR}"/${PN}-2.02.92-dynamic-static-ldflags.patch
# bug 361429 - merged upstream in .85
#epatch "${FILESDIR}"/${PN}-2.02.84-udev-pkgconfig.patch
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.73-asneeded.patch
epatch "${FILESDIR}"/${PN}-2.02.88-respect-cc.patch
# Upstream bug of LVM path
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.95-lvmpath.patch
# Upstream patch for http://bugs.gentoo.org/424810
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.95-udev185.patch
# Upstream patch for https://bugs.gentoo.org/444328
epatch "${FILESDIR}"/${P}-strict-aliasing.patch
# Fix calling AR directly with USE static, bug #444082
if use static ; then
sed -i -e "s:\$(AR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:$(tc-getAR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:" \
tools/Makefile.in || die "sed failed"
fi
eautoreconf
}
src_configure() {
local myconf
local buildmode
myconf="${myconf} --enable-dmeventd"
myconf="${myconf} --enable-cmdlib"
myconf="${myconf} --enable-applib"
myconf="${myconf} --enable-fsadm"
myconf="${myconf} --enable-lvmetad"
# Most of this package does weird stuff.
# The build options are tristate, and --without is NOT supported
# options: 'none', 'internal', 'shared'
if use static ; then
einfo "Building static LVM, for usage inside genkernel"
buildmode="internal"
# This only causes the .static versions to become available
# We explicitly provide the .static versions so that they can be included in
# initramfs environments.
myconf="${myconf} --enable-static_link"
else
ewarn "Building shared LVM, it will not work inside genkernel!"
buildmode="shared"
fi
# dmeventd requires mirrors to be internal, and snapshot available
# so we cannot disable them
myconf="${myconf} --with-mirrors=internal"
myconf="${myconf} --with-snapshots=internal"
use thin \
&& myconf="${myconf} --with-thin=internal" \
|| myconf="${myconf} --with-thin=none"
if use lvm1 ; then
myconf="${myconf} --with-lvm1=${buildmode}"
else
myconf="${myconf} --with-lvm1=none"
fi
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
if use clvm; then
myconf="${myconf} --with-cluster=${buildmode}"
# 4-state! Make sure we get it right, per bug 210879
# Valid options are: none, cman, gulm, all
#
# 2009/02:
# gulm is removed now, now dual-state:
# cman, none
# all still exists, but is not needed
#
# 2009/07:
# TODO: add corosync and re-enable ALL
local clvmd=""
use cman && clvmd="cman"
#clvmd="${clvmd/cmangulm/all}"
[ -z "${clvmd}" ] && clvmd="none"
myconf="${myconf} --with-clvmd=${clvmd}"
myconf="${myconf} --with-pool=${buildmode}"
else
myconf="${myconf} --with-clvmd=none --with-cluster=none"
fi
local udevdir="${EPREFIX}/lib/udev/rules.d"
use udev && udevdir="${EPREFIX}/$(udev_get_udevdir)/rules.d"
econf \
$(use_enable readline) \
$(use_enable selinux) \
--enable-pkgconfig \
--with-confdir="${EPREFIX}/etc" \
--sbindir="${EPREFIX}/sbin" \
--with-staticdir="${EPREFIX}/sbin" \
--libdir="${EPREFIX}/$(get_libdir)" \
--with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" \
--with-default-run-dir=/run/lvm \
--with-default-locking-dir=/run/lock/lvm \
--with-dmeventd-path=/sbin/dmeventd \
$(use_enable udev udev_rules) \
$(use_enable udev udev_sync) \
$(use_with udev udevdir "${udevdir}") \
${myconf} \
CLDFLAGS="${LDFLAGS}"
}
src_compile() {
einfo "Doing symlinks"
pushd include
emake || die "Failed to prepare symlinks"
popd
einfo "Starting main build"
emake AR="$(tc-getAR)" || die "compile fail"
}
src_install() {
emake DESTDIR="${D}" install
dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{conf,c,txt}
newinitd "${FILESDIR}"/lvm.rc-2.02.95-r2 lvm
newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring
newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm
if use clvm; then
newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd
newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd
fi
# move shared libs to /lib(64)
if use static-libs; then
dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
#gen_usr_ldscript libdevmapper.so
fi
dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
insinto /etc
doins "${FILESDIR}"/dmtab
# Device mapper stuff
newinitd "${FILESDIR}"/device-mapper.rc-2.02.95-r2 device-mapper
newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper
newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd
if use static-libs; then
dolib.a daemons/dmeventd/libdevmapper-event.a \
|| die "dolib.a libdevmapper-event.a"
#gen_usr_ldscript libdevmapper-event.so
fi
use static-libs || \
rm -f "${D}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a
#insinto /etc/udev/rules.d/
#newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules
# do not rely on /lib -> /libXX link
sed -i \
-e "s|/lib/rcscripts/|/$(get_libdir)/rcscripts/|" \
"${ED}"/etc/init.d/* || die
elog "USE flag nocman is deprecated and replaced"
elog "with the cman USE flag."
elog ""
elog "USE flags clvm and cman are masked"
elog "by default and need to be unmasked to be used"
elog ""
elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
}
pkg_postinst() {
elog "lvm volumes are no longer automatically created for"
elog "baselayout-2 users. If you are using baselayout-2, be sure to"
elog "run: # rc-update add lvm boot"
elog "Do NOT add it if you are still using baselayout-1."
}
src_test() {
einfo "Testcases disabled because of device-node mucking"
einfo "If you want them, compile the package and see ${S}/tests"
}

View File

@ -0,0 +1,272 @@
# Copyright 1999-2012 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.97.ebuild,v 1.2 2012/11/28 10:55:33 ssuominen Exp $
EAPI=3
inherit eutils multilib toolchain-funcs autotools linux-info
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="readline static static-libs clvm cman +lvm1 selinux +udev +thin"
DEPEND_COMMON="!!sys-fs/device-mapper
readline? ( sys-libs/readline )
clvm? ( =sys-cluster/libdlm-3*
cman? ( =sys-cluster/cman-3* ) )
udev? ( virtual/udev )"
# /run is now required for locking during early boot. /var cannot be assumed to
# be available.
RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.10.1
>=sys-apps/baselayout-2.1-r1
!!sys-fs/lvm-user
!!sys-fs/clvm
>=sys-apps/util-linux-2.16
thin? ( sys-block/thin-provisioning-tools )"
# Upgrading to this LVM will break older cryptsetup
RDEPEND="${RDEPEND}
!<sys-fs/cryptsetup-1.1.2"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig
>=sys-devel/binutils-2.20.1-r1
static? ( virtual/udev[static-libs] )"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
pkg_setup() {
local CONFIG_CHECK="~SYSVIPC"
use udev && local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n"
check_extra_config
# 1. Genkernel no longer copies /sbin/lvm blindly.
if use static; then
elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
elog "their static versions. If you need the static binaries,"
elog "you must append .static to the filename!"
fi
}
src_unpack() {
unpack ${A}
}
src_prepare() {
epatch "${FILESDIR}"/lvm.conf-2.02.67.patch
# Should not be needed due to upstream re-arrangement of build
#epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
# Should not be need with new upstream udev rules
#epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
# Fixed differently upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
# bug 318513 - merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch
# bug 301331
epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch
# bug 330373
epatch "${FILESDIR}"/${PN}-2.02.92-locale-muck.patch
# --as-needed
epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch
# bug 332905
epatch "${FILESDIR}"/${PN}-2.02.92-dynamic-static-ldflags.patch
# bug 361429 - merged upstream in .85
#epatch "${FILESDIR}"/${PN}-2.02.84-udev-pkgconfig.patch
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.73-asneeded.patch
epatch "${FILESDIR}"/${PN}-2.02.88-respect-cc.patch
# Upstream bug of LVM path
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.95-lvmpath.patch
# Upstream patch for http://bugs.gentoo.org/424810
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.95-udev185.patch
eautoreconf
}
src_configure() {
local myconf
local buildmode
myconf="${myconf} --enable-dmeventd"
myconf="${myconf} --enable-cmdlib"
myconf="${myconf} --enable-applib"
myconf="${myconf} --enable-fsadm"
myconf="${myconf} --enable-lvmetad"
# Most of this package does weird stuff.
# The build options are tristate, and --without is NOT supported
# options: 'none', 'internal', 'shared'
if use static ; then
einfo "Building static LVM, for usage inside genkernel"
buildmode="internal"
# This only causes the .static versions to become available
# We explicitly provide the .static versions so that they can be included in
# initramfs environments.
myconf="${myconf} --enable-static_link"
else
ewarn "Building shared LVM, it will not work inside genkernel!"
buildmode="shared"
fi
# dmeventd requires mirrors to be internal, and snapshot available
# so we cannot disable them
myconf="${myconf} --with-mirrors=internal"
myconf="${myconf} --with-snapshots=internal"
use thin \
&& myconf="${myconf} --with-thin=internal" \
|| myconf="${myconf} --with-thin=none"
if use lvm1 ; then
myconf="${myconf} --with-lvm1=${buildmode}"
else
myconf="${myconf} --with-lvm1=none"
fi
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
if use clvm; then
myconf="${myconf} --with-cluster=${buildmode}"
# 4-state! Make sure we get it right, per bug 210879
# Valid options are: none, cman, gulm, all
#
# 2009/02:
# gulm is removed now, now dual-state:
# cman, none
# all still exists, but is not needed
#
# 2009/07:
# TODO: add corosync and re-enable ALL
local clvmd=""
use cman && clvmd="cman"
#clvmd="${clvmd/cmangulm/all}"
[ -z "${clvmd}" ] && clvmd="none"
myconf="${myconf} --with-clvmd=${clvmd}"
myconf="${myconf} --with-pool=${buildmode}"
else
myconf="${myconf} --with-clvmd=none --with-cluster=none"
fi
local udevdir="${EPREFIX}/lib/udev/rules.d"
use udev && udevdir="${EPREFIX}$($(tc-getPKG_CONFIG) --variable=udevdir udev)/rules.d"
econf \
$(use_enable readline) \
$(use_enable selinux) \
--enable-pkgconfig \
--with-confdir="${EPREFIX}/etc" \
--sbindir="${EPREFIX}/sbin" \
--with-staticdir="${EPREFIX}/sbin" \
--libdir="${EPREFIX}/$(get_libdir)" \
--with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" \
--with-default-run-dir=/run/lvm \
--with-default-locking-dir=/run/lock/lvm \
--with-dmeventd-path=/sbin/dmeventd \
$(use_enable udev udev_rules) \
$(use_enable udev udev_sync) \
$(use_with udev udevdir "${udevdir}") \
${myconf} \
CLDFLAGS="${LDFLAGS}"
}
src_compile() {
einfo "Doing symlinks"
pushd include
emake || die "Failed to prepare symlinks"
popd
einfo "Starting main build"
emake || die "compile fail"
}
src_install() {
emake DESTDIR="${D}" install || die "Failed to emake install"
dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{conf,c,txt}
newinitd "${FILESDIR}"/lvm.rc-2.02.95-r2 lvm || die
newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring || die
newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm || die
if use clvm; then
newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd || die
newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd || die
fi
# move shared libs to /lib(64)
if use static-libs; then
dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
#gen_usr_ldscript libdevmapper.so
fi
dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
insinto /etc
doins "${FILESDIR}"/dmtab
# Device mapper stuff
newinitd "${FILESDIR}"/device-mapper.rc-2.02.95-r2 device-mapper || die
newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper || die
newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd || die
if use static-libs; then
dolib.a daemons/dmeventd/libdevmapper-event.a \
|| die "dolib.a libdevmapper-event.a"
#gen_usr_ldscript libdevmapper-event.so
fi
use static-libs || \
rm -f "${D}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a
#insinto /etc/udev/rules.d/
#newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules || die
# do not rely on /lib -> /libXX link
sed -i \
-e "s|/lib/rcscripts/|/$(get_libdir)/rcscripts/|" \
"${ED}"/etc/init.d/* || die
elog "USE flag nocman is deprecated and replaced"
elog "with the cman USE flag."
elog ""
elog "USE flags clvm and cman are masked"
elog "by default and need to be unmasked to be used"
elog ""
elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
}
pkg_postinst() {
elog "lvm volumes are no longer automatically created for"
elog "baselayout-2 users. If you are using baselayout-2, be sure to"
elog "run: # rc-update add lvm boot"
elog "Do NOT add it if you are still using baselayout-1."
}
src_test() {
einfo "Testcases disabled because of device-node mucking"
einfo "If you want them, compile the package and see ${S}/tests"
}

View File

@ -0,0 +1,278 @@
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/sys-fs/lvm2/lvm2-2.02.98.ebuild,v 1.3 2013/01/18 03:39:06 ssuominen Exp $
EAPI=5
inherit eutils multilib toolchain-funcs autotools linux-info udev
DESCRIPTION="User-land utilities for LVM2 (device-mapper) software."
HOMEPAGE="http://sources.redhat.com/lvm2/"
SRC_URI="ftp://sources.redhat.com/pub/lvm2/${PN/lvm/LVM}.${PV}.tgz
ftp://sources.redhat.com/pub/lvm2/old/${PN/lvm/LVM}.${PV}.tgz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="readline static static-libs clvm cman +lvm1 selinux +udev +thin"
DEPEND_COMMON="!!sys-fs/device-mapper
readline? ( sys-libs/readline )
clvm? ( =sys-cluster/libdlm-3*
cman? ( =sys-cluster/cman-3* ) )
udev? ( virtual/udev )"
# /run is now required for locking during early boot. /var cannot be assumed to
# be available.
RDEPEND="${DEPEND_COMMON}
!<sys-apps/openrc-0.10.1
>=sys-apps/baselayout-2.1-r1
!!sys-fs/lvm-user
!!sys-fs/clvm
>=sys-apps/util-linux-2.16
thin? ( sys-block/thin-provisioning-tools )"
# Upgrading to this LVM will break older cryptsetup
RDEPEND="${RDEPEND}
!<sys-fs/cryptsetup-1.1.2"
DEPEND="${DEPEND_COMMON}
virtual/pkgconfig
>=sys-devel/binutils-2.20.1-r1
static? ( virtual/udev[static-libs] )"
S="${WORKDIR}/${PN/lvm/LVM}.${PV}"
pkg_setup() {
local CONFIG_CHECK="~SYSVIPC"
use udev && local WARNING_SYSVIPC="CONFIG_SYSVIPC:\tis not set (required for udev sync)\n"
check_extra_config
# 1. Genkernel no longer copies /sbin/lvm blindly.
if use static; then
elog "Warning, we no longer overwrite /sbin/lvm and /sbin/dmsetup with"
elog "their static versions. If you need the static binaries,"
elog "you must append .static to the filename!"
fi
}
src_prepare() {
epatch "${FILESDIR}"/lvm.conf-2.02.67.patch
# Should not be needed due to upstream re-arrangement of build
#epatch "${FILESDIR}"/${PN}-2.02.56-dmeventd.patch
# Should not be need with new upstream udev rules
#epatch "${FILESDIR}"/${PN}-2.02.56-device-mapper-export-format.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-as-needed.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.48-fix-pkgconfig.patch
# Merged upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-fix-pvcreate.patch
# Fixed differently upstream:
#epatch "${FILESDIR}"/${PN}-2.02.51-dmsetup-selinux-linking-fix-r3.patch
epatch "${FILESDIR}"/${PN}-2.02.63-always-make-static-libdm.patch
epatch "${FILESDIR}"/lvm2-2.02.56-lvm2create_initrd.patch
# bug 318513 - merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.64-dmeventd-libs.patch
# bug 301331
epatch "${FILESDIR}"/${PN}-2.02.67-createinitrd.patch
# bug 330373
epatch "${FILESDIR}"/${PN}-2.02.92-locale-muck.patch
# --as-needed
epatch "${FILESDIR}"/${PN}-2.02.70-asneeded.patch
# bug 332905
epatch "${FILESDIR}"/${PN}-2.02.92-dynamic-static-ldflags.patch
# bug 361429 - merged upstream in .85
#epatch "${FILESDIR}"/${PN}-2.02.84-udev-pkgconfig.patch
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.73-asneeded.patch
epatch "${FILESDIR}"/${PN}-2.02.88-respect-cc.patch
# Upstream bug of LVM path
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.95-lvmpath.patch
# Upstream patch for http://bugs.gentoo.org/424810
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.95-udev185.patch
# Upstream patch for https://bugs.gentoo.org/444328
# Merged upstream
#epatch "${FILESDIR}"/${PN}-2.02.97-strict-aliasing.patch
# Fix calling AR directly with USE static, bug #444082
if use static ; then
sed -i -e "s:\$(AR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:$(tc-getAR) rs \$@ \$(OBJECTS) lvmcmdlib.o lvm2cmd-static.o:" \
tools/Makefile.in || die "sed failed"
fi
eautoreconf
}
src_configure() {
local myconf
local buildmode
myconf="${myconf} --enable-dmeventd"
myconf="${myconf} --enable-cmdlib"
myconf="${myconf} --enable-applib"
myconf="${myconf} --enable-fsadm"
myconf="${myconf} --enable-lvmetad"
# Most of this package does weird stuff.
# The build options are tristate, and --without is NOT supported
# options: 'none', 'internal', 'shared'
if use static ; then
einfo "Building static LVM, for usage inside genkernel"
buildmode="internal"
# This only causes the .static versions to become available
# We explicitly provide the .static versions so that they can be included in
# initramfs environments.
myconf="${myconf} --enable-static_link"
else
ewarn "Building shared LVM, it will not work inside genkernel!"
buildmode="shared"
fi
# dmeventd requires mirrors to be internal, and snapshot available
# so we cannot disable them
myconf="${myconf} --with-mirrors=internal"
myconf="${myconf} --with-snapshots=internal"
use thin \
&& myconf="${myconf} --with-thin=internal" \
|| myconf="${myconf} --with-thin=none"
if use lvm1 ; then
myconf="${myconf} --with-lvm1=${buildmode}"
else
myconf="${myconf} --with-lvm1=none"
fi
# disable O_DIRECT support on hppa, breaks pv detection (#99532)
use hppa && myconf="${myconf} --disable-o_direct"
if use clvm; then
myconf="${myconf} --with-cluster=${buildmode}"
# 4-state! Make sure we get it right, per bug 210879
# Valid options are: none, cman, gulm, all
#
# 2009/02:
# gulm is removed now, now dual-state:
# cman, none
# all still exists, but is not needed
#
# 2009/07:
# TODO: add corosync and re-enable ALL
local clvmd=""
use cman && clvmd="cman"
#clvmd="${clvmd/cmangulm/all}"
[ -z "${clvmd}" ] && clvmd="none"
myconf="${myconf} --with-clvmd=${clvmd}"
myconf="${myconf} --with-pool=${buildmode}"
else
myconf="${myconf} --with-clvmd=none --with-cluster=none"
fi
local udevdir="${EPREFIX}/lib/udev/rules.d"
use udev && udevdir="${EPREFIX}/$(udev_get_udevdir)/rules.d"
econf \
$(use_enable readline) \
$(use_enable selinux) \
--enable-pkgconfig \
--with-confdir="${EPREFIX}/etc" \
--sbindir="${EPREFIX}/sbin" \
--with-staticdir="${EPREFIX}/sbin" \
--libdir="${EPREFIX}/$(get_libdir)" \
--with-usrlibdir="${EPREFIX}/usr/$(get_libdir)" \
--with-default-run-dir=/run/lvm \
--with-default-locking-dir=/run/lock/lvm \
--with-dmeventd-path=/sbin/dmeventd \
$(use_enable udev udev_rules) \
$(use_enable udev udev_sync) \
$(use_with udev udevdir "${udevdir}") \
${myconf} \
CLDFLAGS="${LDFLAGS}"
}
src_compile() {
einfo "Doing symlinks"
pushd include
emake || die "Failed to prepare symlinks"
popd
einfo "Starting main build"
emake AR="$(tc-getAR)" || die "compile fail"
}
src_install() {
emake DESTDIR="${D}" install
dodoc README VERSION* WHATS_NEW WHATS_NEW_DM doc/*.{conf,c,txt}
newinitd "${FILESDIR}"/lvm.rc-2.02.95-r2 lvm
newinitd "${FILESDIR}"/lvm-monitoring.initd-2.02.67-r2 lvm-monitoring
newconfd "${FILESDIR}"/lvm.confd-2.02.28-r2 lvm
if use clvm; then
newinitd "${FILESDIR}"/clvmd.rc-2.02.39 clvmd
newconfd "${FILESDIR}"/clvmd.confd-2.02.39 clvmd
fi
# move shared libs to /lib(64)
if use static-libs; then
dolib.a libdm/ioctl/libdevmapper.a || die "dolib.a libdevmapper.a"
#gen_usr_ldscript libdevmapper.so
fi
dosbin "${S}"/scripts/lvm2create_initrd/lvm2create_initrd
doman "${S}"/scripts/lvm2create_initrd/lvm2create_initrd.8
newdoc "${S}"/scripts/lvm2create_initrd/README README.lvm2create_initrd
insinto /etc
doins "${FILESDIR}"/dmtab
# Device mapper stuff
newinitd "${FILESDIR}"/device-mapper.rc-2.02.95-r2 device-mapper
newconfd "${FILESDIR}"/device-mapper.conf-1.02.22-r3 device-mapper
newinitd "${FILESDIR}"/dmeventd.initd-2.02.67-r1 dmeventd
if use static-libs; then
dolib.a daemons/dmeventd/libdevmapper-event.a \
|| die "dolib.a libdevmapper-event.a"
#gen_usr_ldscript libdevmapper-event.so
fi
use static-libs || \
rm -f "${D}"/usr/$(get_libdir)/{libdevmapper-event,liblvm2cmd,liblvm2app,libdevmapper}.a
#insinto /etc/udev/rules.d/
#newins "${FILESDIR}"/64-device-mapper.rules-2.02.56-r3 64-device-mapper.rules
# do not rely on /lib -> /libXX link
sed -i \
-e "s|/lib/rcscripts/|/$(get_libdir)/rcscripts/|" \
"${ED}"/etc/init.d/* || die
elog "USE flag nocman is deprecated and replaced"
elog "with the cman USE flag."
elog ""
elog "USE flags clvm and cman are masked"
elog "by default and need to be unmasked to be used"
elog ""
elog "If you are using genkernel and root-on-LVM, rebuild the initramfs."
}
pkg_postinst() {
elog "lvm volumes are no longer automatically created for"
elog "baselayout-2 users. If you are using baselayout-2, be sure to"
elog "run: # rc-update add lvm boot"
elog "Do NOT add it if you are still using baselayout-1."
}
src_test() {
einfo "Testcases disabled because of device-node mucking"
einfo "If you want them, compile the package and see ${S}/tests"
}

View File

@ -0,0 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer>
<email>robbat2@gentoo.org</email>
<name>Robin H. Johnson</name>
</maintainer>
<maintainer>
<email>cardoe@gentoo.org</email>
<name>Doug Goldstein</name>
</maintainer>
<maintainer>
<email>agk@redhat.com</email>
<name>Alasdair Kergon</name>
<description>Upstream Maintainer (please CC on bugs)</description>
</maintainer>
<use>
<flag name='clvm'>Allow users to build clustered lvm2</flag>
<flag name='cman'>Cman support for clustered lvm</flag>
<flag name='lvm1'>Allow users to build lvm2 with lvm1 support</flag>
<flag name='nolvmstatic'>Allow users to build lvm2 dynamically</flag>
<flag name='thin'>Support for thin volumes</flag>
</use>
</pkgmetadata>