diff options
author | Mike Gilbert <floppym@gentoo.org> | 2014-05-20 14:47:05 +0000 |
---|---|---|
committer | Mike Gilbert <floppym@gentoo.org> | 2014-05-20 14:47:05 +0000 |
commit | 960904069e0a51b703902553f545c36c407ed239 (patch) | |
tree | 3b1bb8a182784c7f880e9ce634e9be93c5eafe87 /sys-fs/btrfs-progs | |
parent | version bump (diff) | |
download | historical-960904069e0a51b703902553f545c36c407ed239.tar.gz historical-960904069e0a51b703902553f545c36c407ed239.tar.bz2 historical-960904069e0a51b703902553f545c36c407ed239.zip |
Backport patch to fix linking failures with libbtrfs, reported by dlan.
Package-Manager: portage-2.2.10/cvs/Linux x86_64
Manifest-Sign-Key: 0x0BBEEA1FEA4843A4
Diffstat (limited to 'sys-fs/btrfs-progs')
-rw-r--r-- | sys-fs/btrfs-progs/ChangeLog | 8 | ||||
-rw-r--r-- | sys-fs/btrfs-progs/Manifest | 10 | ||||
-rw-r--r-- | sys-fs/btrfs-progs/btrfs-progs-3.14.1-r1.ebuild | 58 | ||||
-rw-r--r-- | sys-fs/btrfs-progs/files/btrfs-progs-3.14.1-arg_strtou64.patch | 146 |
4 files changed, 217 insertions, 5 deletions
diff --git a/sys-fs/btrfs-progs/ChangeLog b/sys-fs/btrfs-progs/ChangeLog index a44187544fc9..409c92dd3a82 100644 --- a/sys-fs/btrfs-progs/ChangeLog +++ b/sys-fs/btrfs-progs/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for sys-fs/btrfs-progs # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/ChangeLog,v 1.78 2014/04/29 01:50:12 floppym Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/ChangeLog,v 1.79 2014/05/20 14:47:03 floppym Exp $ + +*btrfs-progs-3.14.1-r1 (20 May 2014) + + 20 May 2014; Mike Gilbert <floppym@gentoo.org> +btrfs-progs-3.14.1-r1.ebuild, + +files/btrfs-progs-3.14.1-arg_strtou64.patch: + Backport patch to fix linking failures with libbtrfs, reported by dlan. *btrfs-progs-3.14.1 (29 Apr 2014) diff --git a/sys-fs/btrfs-progs/Manifest b/sys-fs/btrfs-progs/Manifest index 28eb7a74fa27..e3a225eaa961 100644 --- a/sys-fs/btrfs-progs/Manifest +++ b/sys-fs/btrfs-progs/Manifest @@ -6,6 +6,7 @@ AUX btrfs-progs-0.19-fix-underlinking.patch 579 SHA256 d79d53eb798c7f504a895e7bf AUX btrfs-progs-0.19-glibc212.patch 535 SHA256 c9a1479df01ba8b74b97ecf723d7f2a5e7c347dc0c92ae6676b9d1dc311a6bd1 SHA512 16f2a7e6fd813f4163c954860e47394d8123dd603c379ea4e2efc0a2dea17be925cf8d95c87306bb96395d09572156520cb0ae5af1d465f63752b58f09bce6db WHIRLPOOL f379a59e5e89cbb9dbed090893da939e2a52d4ddc9a9c9df36dfa90e388aa64e19a99c40e6e155a1ec54da50cecfc5233feb3c8bd2effab6621f317751b80fc5 AUX btrfs-progs-3.12-defrag-sockets.patch 2488 SHA256 78980701932c5d299852c374f8bfbda2360be40957fbc95860e76e174b7892b5 SHA512 713823535b9ebe8324fbd9603955cbe5fb0c93c60ad5123cca712cc90bee948819680790e14e27245dbbe18c05187c8a09bd69235334aca67a69913dd3992df4 WHIRLPOOL 1c0110b4c12630502f0db4bffe99de0a173b3abe1d3d80e0e8e31b909e327c2a9d50d8f8d6ea8ef6b6e68c625575d62a68ff881067fea55b91c00155bfa5d57b AUX btrfs-progs-3.12-fix-send-subvol-492776.patch 3099 SHA256 7a149637da9a35c31089cc69e4ad5d3f4beae9fe8f8d44d7a55b75394a6ad27f SHA512 e5d32a084ef706911464cb49c35928ce4a9f3ebaa580502c73dcfb74fa2e0f022bcc05e3fb6e26aa953fff78d792594b044cff342a42fa56a774033e6d59d961 WHIRLPOOL 1026b33cc0f45ae4a8795a81bc54aad48b9550efbde01425d445ae9fbfbddbeff5449cb431581eb9235a0201534198591d244e96c807896adfae3fbfe1624814 +AUX btrfs-progs-3.14.1-arg_strtou64.patch 4244 SHA256 47755268797b4eb5371f31e9a04b4d201726ffc3c0f9777226d9759286c2071b SHA512 26a26ab792632d85e00bc9917ea128c40ab694b6309fc839c9a60b7f3b0ffab4a228ade6a9e35ba75ba615b05c9c64fe7c3b238acd66a3ac41e811b8f143f6c6 WHIRLPOOL dc48412c8d9e99f2cd5200d3e9be1311cfce193d461902b8e45153cc46c0f457adb0c7beb9aa19b7f4c0b84ef80d3872970d1c399521f92d0e499a7bb52d7d0d DIST btrfs-progs-0.19-redhat.patch.bz2 21699 SHA256 36e581ce32aad7119195a0f5c47d3007d38b3520b92ba3c825baf22f35f17723 SHA512 a3a9809548b61fcd25336789952d83d53a9ad1d221447907b85acd43a68518e3a746de3469bb917f51a49024b99bec1b9e1a46014b460ed8000b3919e3d444a1 WHIRLPOOL 3c33b0a2283cf55d3399609ebeb407567cb3daa60fcf01476b5acd22dd9fb1af7fa228a66d9ef24086543c9383a107811846c741feff503169561de6ef2b06d2 DIST btrfs-progs-0.19.11.tar.bz2 171425 SHA256 b4b510c4106a5b6159f2e51ac685ca700d53693140137e45f67e3767db18b662 SHA512 3704f240f7128bff8c5fc1ce7fd44b4eb985c1cddd7139fa96da0536849bdbbe9b08bbd928c3a20e91c5a0ccd07f60020f6dacb91a6887c2fc73de668477fa99 WHIRLPOOL 7fa6e7fb5566a17bb147ec847f6c1a3a55814a5676b1bf413f9b310de503c5cfef62b3e4b86a4ce28f7ae905416fad44fa802fc75c6cecd51265a9f69cc6175a DIST btrfs-progs-0.19.tar.bz2 118119 SHA256 f8a3dd03e87a33506d16ccc1e5a77c4c38ff1fa84b9502ed4b88c0b39fab70fc SHA512 f0978432b524f307302d80e3a904684c21b6549f0b444f51a17f1d6f0a3dfebfc39ef185c3431a007fb354218aa7027e665ca6a3c58267bb8d0905ae34dc7b80 WHIRLPOOL c11134671eab375b51b190bba9583d7b064486563bdb4a19bd16d27ce7e1812a2b3ab4efc3cce0ce19a60b0d50d96f3110c39ce770cd9535bd839378b68e0be2 @@ -23,15 +24,16 @@ EBUILD btrfs-progs-0.20_rc1_p56.ebuild 1039 SHA256 494a3ed6440764f689beceaf5dee2 EBUILD btrfs-progs-3.12-r1.ebuild 1296 SHA256 84d42770173fa071eea3c274ee3805a478cc2a6bdfe00a43849158edcc393708 SHA512 46e3730a69b3d31eeada7312d09c31e631a30829c052d165d3cfb0907ce6ecc529727e369c93725b8f7b8b6eb2f2ffd7d63baed3c19f9bf9846415ad158240b0 WHIRLPOOL c1ae28044d953987c5af0d73caf98fe9d520962b6ef69e5f00f181ede182b777f383668af955e1b401210bcd4767f1217c82e3b37eaefd17cc823beb7e2ae3b5 EBUILD btrfs-progs-3.12-r2.ebuild 1352 SHA256 aa54631b74410214e3e66c0f1e9bce461cbb4964e6bf8e71153fdd2eaed4f175 SHA512 bba56ff199039b7465efa6c9354aaebbb65d9a79f247e44ecc41aaa58e3da910f8d93a76a8767248a7aa073753a2c17273886fa1e1bb1feea39e8135691fb461 WHIRLPOOL 646a0c19c228ca95d8cdc5c0b91ef4d600575e1eed50238ea958e38b51321f089f9bfebb49f86d343ce78b9539082cb1a5c8eae079b854f312db5f1c78efb4e6 EBUILD btrfs-progs-3.12.ebuild 1245 SHA256 8f801a7d5de7b9fffc6f312618a5beeec25d4475d3671faf0a288f757bc22086 SHA512 44ea5d9cd347badfddcbc06298634338c0a492a15083e2b36320de905f38a1c912fd30c37878ff3e3b8753f822a15f2b61b008e5759ca4e5b97cc1935146e978 WHIRLPOOL 7a441dba6b985cd41202256f2fd07d16952244c451bc381fa69a0ab117f3c6587685af755d1ae4958f627715ce5075b736d391631e6b17fc5a055401ab0f7502 +EBUILD btrfs-progs-3.14.1-r1.ebuild 1297 SHA256 19770b96213d3ef8cf7b54924698c183ee76b3e45d94f40412ef60e21c73bb2b SHA512 61c0a4b5c26698371c76c9ca502493687d190e28cc2c440eaca16c3e77229fee192645d854498bc3c4476988e3c2483c3e58f075de98e354e83197e63662aec7 WHIRLPOOL 733e4b07334c2476fe7e3ecadcafb08326bf3b918f6bbcc101eec3ec9f10b835eb70a8fcfa036a5121f8644d4d73c9ce6e041274846a1ce8ebce74b6edd535c0 EBUILD btrfs-progs-3.14.1.ebuild 1248 SHA256 a125f1df1373fc9f265408fdc00d78ad7696e2a8802002420e6da661e9664872 SHA512 bf1e23362d998c46cc32b34b01727eaa24de60f21768e80d047e31ae1605cc11b359ff4d8fbde42f75efaea92023329fba671da9e5d7b42205abc6ed3fd5f994 WHIRLPOOL 7537764f73d37209ea1ac4f12afc493b330e2cddb59bafacc80e522af67a7fb60bf3c5d5c09fd476f541705cd92c35ff7bb0ced01f62393fc2539ea5c0800f3e EBUILD btrfs-progs-3.14_pre20140414.ebuild 1332 SHA256 828cd875d6efb2dbdd946e05c4bad0a117b4a9b6af99ed1edb18733485c0b72b SHA512 a699c4309ee30ad07157bdda5a1428f7ac48ad77f0a0c0438eecd6f95fe45bb41bf25918076577af88a2e7109f642edf4565727a441bcb39057064da396914c1 WHIRLPOOL 7b50e18d93c22a650b943e6e3320fd5e5423a648f769838570a800da62b8a6d6fe97397b2ab92c190ef1900ac2bf83fe9691027e322af06c80215995fea09652 EBUILD btrfs-progs-9999.ebuild 1246 SHA256 6fbc3a7e4e084579171da19cafa4ff4e456bfd148bf4df86b239310b3daa201f SHA512 ed4e1b526bce032f5b9b9c7ab7ab7b3cf5601c2c53502e6f623c9a173629cc6163536dd8a660f3b22e601bcbecf514bb4923aa4499f5804a2fb31d6b9c43bc24 WHIRLPOOL 2f69a4e386a3174542c3caded0c7acf8dc65c313ad7c8d8f9b40f760a8b51188485c3d1fc62bc1f8f88228bca23c9f0d12c435aee7d5e41e79fdfb49692f2800 -MISC ChangeLog 12011 SHA256 e80cd724edf5ba29a9f64142f7f98fdde6411e17068b3fb0a70ec5c7e9085dc5 SHA512 5d16661bd27dac182d81bc9e0ca59ae0eb9fc5908ddf62091d918aff1a0df9f037fa43aead52148f718353e4fa149715f499b7fa1551085d784e54267b6fcc3a WHIRLPOOL 5416cb2f6b2a7c425ed0aae850d6186d3915bc4ed171e5328df29503a26f1b87a20b9e68f591ccc8825d7ded893bec158900390940ea41d46f893c8a81813fdc +MISC ChangeLog 12252 SHA256 6a8a80bdfdfaff845857f03d68a86cf8b2b64e7d0fbfbaac1c67e0ce74c612ee SHA512 78b5988e9e172fe9f7eb197bb95b5dff688a6c9397f5616552c19e6eba0a0509aae74737be4846613a6e3968baa8b36ab3e833fd9ff4000cf13361a2d0eaf914 WHIRLPOOL bf7a0037822f13d3656dcfafc4c2221f6fe958cbc81985a8352d16a0c0d6faf9860c2616b10ae4cf93524ca1af4f55a193df28ddcee1e7ecec6f98585c60d31f MISC metadata.xml 432 SHA256 45049c27e84490ae5258d3beaa9c6defe80360aa7f03733da492fd38d026a5e0 SHA512 1dda7aa3a62062d6b42579efff9468c08fcca001b28e180c8257291332ac1874f749a19a4053daec072d7b878c13873557f05d82ad42428f105556c4cd304460 WHIRLPOOL 970b4a981f1afbe87ad4240fc2dd5ebfc4bb134a2e3c188519ecb6a87d230b196a902381de3e6346855e68c6e92f883c4d6b4aa01bcdb090e2de8f230e1cecff -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (GNU/Linux) -iF4EAREIAAYFAlNfBVgACgkQC77qH+pIQ6Qe3gEAjV1KWJodIWtoDv/fZMs7zlZX -iy7CtQO1PZuwh2i055oA/1cIHvMwKe2zz70PBOpanNb/nVMoEtYKjhazEMfIMF17 -=VpWs +iF4EAREIAAYFAlN7augACgkQC77qH+pIQ6SHxQD+Om1ZTSB0pVXZGcS1PLk8R9iU +LmIs9IiLwlpQPpv3augBAKM1EGnbvVkU3u7qqO4XZ3jxKAcZIZsjLBntUo18lCK6 +=yjpI -----END PGP SIGNATURE----- diff --git a/sys-fs/btrfs-progs/btrfs-progs-3.14.1-r1.ebuild b/sys-fs/btrfs-progs/btrfs-progs-3.14.1-r1.ebuild new file mode 100644 index 000000000000..38a92808882f --- /dev/null +++ b/sys-fs/btrfs-progs/btrfs-progs-3.14.1-r1.ebuild @@ -0,0 +1,58 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/sys-fs/btrfs-progs/btrfs-progs-3.14.1-r1.ebuild,v 1.1 2014/05/20 14:47:03 floppym Exp $ + +EAPI=5 + +inherit eutils multilib toolchain-funcs + +libbtrfs_soname=0 + +if [[ ${PV} != 9999 ]]; then + MY_PV=v${PV} + KEYWORDS="~alpha ~amd64 ~arm ~ia64 ~mips ~ppc ~ppc64 ~sparc ~x86" + SRC_URI="https://www.kernel.org/pub/linux/kernel/people/mason/${PN}/${PN}-${MY_PV}.tar.xz" + S="${WORKDIR}"/${PN}-${MY_PV} +else + inherit git-2 + EGIT_REPO_URI="git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git + https://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-progs.git" +fi + +DESCRIPTION="Btrfs filesystem utilities" +HOMEPAGE="https://btrfs.wiki.kernel.org" + +LICENSE="GPL-2" +SLOT="0/${libbtrfs_soname}" +IUSE="" + +DEPEND=" + dev-libs/lzo + sys-libs/zlib + sys-apps/acl + sys-fs/e2fsprogs +" +RDEPEND="${DEPEND}" + +src_prepare() { + epatch "${FILESDIR}/${P}-arg_strtou64.patch" + epatch_user +} + +src_compile() { + emake \ + AR="$(tc-getAR)" \ + CC="$(tc-getCC)" \ + CFLAGS="${CFLAGS}" \ + LDFLAGS="${LDFLAGS}" \ + BUILD_VERBOSE=1 +} + +src_install() { + emake install \ + DESTDIR="${D}" \ + prefix=/usr \ + bindir=/sbin \ + libdir=/usr/$(get_libdir) \ + mandir=/usr/share/man +} diff --git a/sys-fs/btrfs-progs/files/btrfs-progs-3.14.1-arg_strtou64.patch b/sys-fs/btrfs-progs/files/btrfs-progs-3.14.1-arg_strtou64.patch new file mode 100644 index 000000000000..a9cced815b21 --- /dev/null +++ b/sys-fs/btrfs-progs/files/btrfs-progs-3.14.1-arg_strtou64.patch @@ -0,0 +1,146 @@ +From: David Sterba <dsterba@suse.cz> +To: linux-btrfs@vger.kernel.org +Subject: [PATCH v2] btrfs-progs: move arg_strtou64 to a separate file for library +Date: Tue, 22 Apr 2014 17:49:01 +0200 + +Linking with libbtrfs fails because arg_strtou64 is not defined and we +cannot just add utils.o to library objects because it's not +library-clean. + +Reported-by: Arvin Schnell <aschnell@suse.com> +Reported-by: Anton Farygin <rider@altlinux.org> +Signed-off-by: David Sterba <dsterba@suse.cz> +--- + +v2: (thanks to Hugo) +- added missing line from comment +- fixed typo +- reformated comment paragraphs + + Makefile | 5 +++-- + utils-lib.c | 42 ++++++++++++++++++++++++++++++++++++++++++ + utils.c | 33 --------------------------------- + 3 files changed, 45 insertions(+), 35 deletions(-) + create mode 100644 utils-lib.c + +diff --git a/Makefile b/Makefile +index 51d53fadf5af..76565e8b2307 100644 +--- a/Makefile ++++ b/Makefile +@@ -9,14 +9,15 @@ CFLAGS = -g -O1 -fno-strict-aliasing + objects = ctree.o disk-io.o radix-tree.o extent-tree.o print-tree.o \ + root-tree.o dir-item.o file-item.o inode-item.o inode-map.o \ + extent-cache.o extent_io.o volumes.o utils.o repair.o \ +- qgroup.o raid6.o free-space-cache.o list_sort.o props.o ++ qgroup.o raid6.o free-space-cache.o list_sort.o props.o \ ++ utils-lib.o + cmds_objects = cmds-subvolume.o cmds-filesystem.o cmds-device.o cmds-scrub.o \ + cmds-inspect.o cmds-balance.o cmds-send.o cmds-receive.o \ + cmds-quota.o cmds-qgroup.o cmds-replace.o cmds-check.o \ + cmds-restore.o cmds-rescue.o chunk-recover.o super-recover.o \ + cmds-property.o + libbtrfs_objects = send-stream.o send-utils.o rbtree.o btrfs-list.o crc32c.o \ +- uuid-tree.o ++ uuid-tree.o utils-lib.o + libbtrfs_headers = send-stream.h send-utils.h send.h rbtree.h btrfs-list.h \ + crc32c.h list.h kerncompat.h radix-tree.h extent-cache.h \ + extent_io.h ioctl.h ctree.h btrfsck.h +diff --git a/utils-lib.c b/utils-lib.c +new file mode 100644 +index 000000000000..9d53c6e5c710 +--- /dev/null ++++ b/utils-lib.c +@@ -0,0 +1,42 @@ ++#define _GNU_SOURCE ++ ++#include "kerncompat.h" ++#include <unistd.h> ++#include <stdlib.h> ++#include <limits.h> ++ ++#if BTRFS_FLAT_INCLUDES ++#else ++#endif /* BTRFS_FLAT_INCLUDES */ ++ ++/* ++ * This function should be only used when parsing command arg, it won't return ++ * error to its caller and rather exit directly just like usage(). ++ */ ++u64 arg_strtou64(const char *str) ++{ ++ u64 value; ++ char *ptr_parse_end = NULL; ++ ++ value = strtoull(str, &ptr_parse_end, 0); ++ if (ptr_parse_end && *ptr_parse_end != '\0') { ++ fprintf(stderr, "ERROR: %s is not a valid numeric value.\n", ++ str); ++ exit(1); ++ } ++ ++ /* ++ * if we pass a negative number to strtoull, it will return an ++ * unexpected number to us, so let's do the check ourselves. ++ */ ++ if (str[0] == '-') { ++ fprintf(stderr, "ERROR: %s: negative value is invalid.\n", ++ str); ++ exit(1); ++ } ++ if (value == ULLONG_MAX) { ++ fprintf(stderr, "ERROR: %s is too large.\n", str); ++ exit(1); ++ } ++ return value; ++} +diff --git a/utils.c b/utils.c +index 29953d9dd2a9..e130849c7bb5 100644 +--- a/utils.c ++++ b/utils.c +@@ -1538,39 +1538,6 @@ scan_again: + return 0; + } + +-/* +- * This function should be only used when parsing +- * command arg, it won't return error to it's +- * caller and rather exit directly just like usage(). +- */ +-u64 arg_strtou64(const char *str) +-{ +- u64 value; +- char *ptr_parse_end = NULL; +- +- value = strtoull(str, &ptr_parse_end, 0); +- if (ptr_parse_end && *ptr_parse_end != '\0') { +- fprintf(stderr, "ERROR: %s is not a valid numeric value.\n", +- str); +- exit(1); +- } +- /* +- * if we pass a negative number to strtoull, +- * it will return an unexpected number to us, +- * so let's do the check ourselves. +- */ +- if (str[0] == '-') { +- fprintf(stderr, "ERROR: %s: negative value is invalid.\n", +- str); +- exit(1); +- } +- if (value == ULLONG_MAX) { +- fprintf(stderr, "ERROR: %s is too large.\n", str); +- exit(1); +- } +- return value; +-} +- + u64 parse_size(char *s) + { + int i; +-- +1.9.0 + +-- +To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in +the body of a message to majordomo@vger.kernel.org +More majordomo info at http://vger.kernel.org/majordomo-info.html |