Gentoo Archives: gentoo-commits

From: Alexis Ballier <aballier@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-freebsd/freebsd-usbin/, sys-freebsd/freebsd-usbin/files/, ...
Date: Tue, 11 Oct 2016 14:48:35
Message-Id: 1476197268.e1bd456fcf9272cfdeaf542618c6b1f3ce3d1118.aballier@gentoo
1 commit: e1bd456fcf9272cfdeaf542618c6b1f3ce3d1118
2 Author: Yuta Satoh <nigoro.dev <AT> gmail <DOT> com>
3 AuthorDate: Tue Oct 11 12:37:39 2016 +0000
4 Commit: Alexis Ballier <aballier <AT> gentoo <DOT> org>
5 CommitDate: Tue Oct 11 14:47:48 2016 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e1bd456f
7
8 sys-freebsd: bump to 11.0
9
10 sys-freebsd/boot0/Manifest | 1 +
11 sys-freebsd/boot0/boot0-11.0.ebuild | 82 +++
12 sys-freebsd/boot0/files/boot0-11.0-gcc46.patch | 14 +
13 .../boot0/files/boot0-11.0-uefi-support.patch | 21 +
14 sys-freebsd/freebsd-bin/Manifest | 1 +
15 sys-freebsd/freebsd-bin/freebsd-bin-11.0.ebuild | 42 ++
16 sys-freebsd/freebsd-cddl/Manifest | 1 +
17 .../files/freebsd-cddl-11.0-add-libs.patch | 87 +++
18 .../files/freebsd-cddl-11.0-workaround.patch | 12 +
19 sys-freebsd/freebsd-cddl/freebsd-cddl-11.0.ebuild | 79 +++
20 sys-freebsd/freebsd-lib/Manifest | 1 +
21 .../files/freebsd-lib-11.0-bsdxml2expat.patch | 39 ++
22 .../files/freebsd-lib-11.0-liblink.patch | 62 ++
23 .../files/freebsd-lib-11.0-libproc-libcxx.patch | 13 +
24 .../files/freebsd-lib-11.0-libsysdecode.patch | 22 +
25 .../files/freebsd-lib-11.0-workaround.patch | 12 +
26 sys-freebsd/freebsd-lib/freebsd-lib-11.0.ebuild | 644 +++++++++++++++++++++
27 sys-freebsd/freebsd-libexec/Manifest | 1 +
28 .../freebsd-libexec/freebsd-libexec-11.0.ebuild | 131 +++++
29 sys-freebsd/freebsd-mk-defs/Manifest | 1 +
30 ...reebsd-mk-defs-11.0-drop-unsupport-cflags.patch | 13 +
31 .../files/freebsd-mk-defs-11.0-gentoo.patch | 343 +++++++++++
32 .../files/freebsd-mk-defs-11.0-gnu.patch | 63 ++
33 .../freebsd-mk-defs-11.0-libproc-libcxx.patch | 13 +
34 .../files/freebsd-mk-defs-11.0-rename-libs.patch | 16 +
35 .../freebsd-mk-defs/freebsd-mk-defs-11.0.ebuild | 55 ++
36 sys-freebsd/freebsd-pam-modules/Manifest | 1 +
37 .../freebsd-pam-modules-11.0.ebuild | 46 ++
38 sys-freebsd/freebsd-pf/Manifest | 1 +
39 .../files/freebsd-pf-11.0-libevent.patch | 13 +
40 .../freebsd-pf/files/freebsd-pf-11.0-pflogd.patch | 13 +
41 sys-freebsd/freebsd-pf/freebsd-pf-11.0.ebuild | 71 +++
42 sys-freebsd/freebsd-rescue/Manifest | 1 +
43 .../files/freebsd-rescue-11.0-rename-libs.patch | 22 +
44 .../freebsd-rescue/freebsd-rescue-11.0.ebuild | 85 +++
45 sys-freebsd/freebsd-sbin/Manifest | 1 +
46 sys-freebsd/freebsd-sbin/freebsd-sbin-11.0.ebuild | 100 ++++
47 sys-freebsd/freebsd-share/Manifest | 1 +
48 .../freebsd-share/freebsd-share-11.0.ebuild | 114 ++++
49 sys-freebsd/freebsd-sources/Manifest | 1 +
50 .../files/freebsd-sources-11.0-gentoo-gcc.patch | 13 +
51 .../files/freebsd-sources-11.0-gentoo.patch | 22 +
52 .../freebsd-sources/freebsd-sources-11.0.ebuild | 170 ++++++
53 sys-freebsd/freebsd-ubin/Manifest | 1 +
54 .../files/freebsd-ubin-11.0-setXid.patch | 147 +++++
55 sys-freebsd/freebsd-ubin/freebsd-ubin-11.0.ebuild | 209 +++++++
56 sys-freebsd/freebsd-usbin/Manifest | 1 +
57 .../files/freebsd-usbin-11.0-workaround.patch | 13 +
58 .../freebsd-usbin/freebsd-usbin-11.0.ebuild | 186 ++++++
59 49 files changed, 3001 insertions(+)
60
61 diff --git a/sys-freebsd/boot0/Manifest b/sys-freebsd/boot0/Manifest
62 index f1e6a89..7b7f95b 100644
63 --- a/sys-freebsd/boot0/Manifest
64 +++ b/sys-freebsd/boot0/Manifest
65 @@ -1,5 +1,6 @@
66 DIST freebsd-contrib-9.1.tar.bz2 54751432 SHA256 e7ffa056d4050ce03ee8e23e276e2a9a494326a98d60c43bee2afcc59576deb8 SHA512 71be13049258c6e6b5e4f63cc16da5d349a89d68f04d87446e4ad33ae8bf2a93ea67d9c256b7bec60b61e65db0487268070cfb77a484c3ac0f8ba368b48c2438 WHIRLPOOL a2a84423175499208d34809e802284d6ba649f317c3a9ad8b7312fa19efe142ebadab0048bac0db8e988e59f9a7468ac7c5d0d25e78b82bdb269a20d18153cee
67 DIST freebsd-lib-9.1.tar.bz2 3206685 SHA256 f31fa8107b4de711c548f6d0c1bb1f81d09f51bcc3b14a1e9e90bb0e7cc4a35d SHA512 40d0c36b6b889c404fa0e0afa38ba4e84a55bc88ffa2f98a70afbd7a32c4f32c158617ba770567d082a986d62c09b3ec8db3dc5ab853ee1c9bbe0b90bb82396e WHIRLPOOL 581878bf9c43184b043b4293409b85901c9ed1f9bd279e965414aca41ba50950848ebda3ee10a503a028135dfd2765e95a11acd4e62a11c528e104392bbbd8d0
68 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
69 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
70 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
71 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
72
73 diff --git a/sys-freebsd/boot0/boot0-11.0.ebuild b/sys-freebsd/boot0/boot0-11.0.ebuild
74 new file mode 100644
75 index 00000000..d108508
76 --- /dev/null
77 +++ b/sys-freebsd/boot0/boot0-11.0.ebuild
78 @@ -0,0 +1,82 @@
79 +# Copyright 1999-2016 Gentoo Foundation
80 +# Distributed under the terms of the GNU General Public License v2
81 +# $Id$
82 +
83 +EAPI=5
84 +
85 +inherit bsdmk freebsd flag-o-matic toolchain-funcs
86 +
87 +DESCRIPTION="FreeBSD's bootloader"
88 +SLOT="0"
89 +
90 +IUSE="bzip2 ieee1394 tftp zfs"
91 +
92 +if [[ ${PV} != *9999* ]]; then
93 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
94 +fi
95 +
96 +EXTRACTONLY="
97 + sys/
98 + lib/
99 + contrib/bzip2/
100 +"
101 +
102 +RDEPEND=""
103 +DEPEND="=sys-freebsd/freebsd-mk-defs-${RV}*
104 + =sys-freebsd/freebsd-lib-${RV}*"
105 +
106 +S="${WORKDIR}/sys/boot"
107 +
108 +PATCHES=( "${FILESDIR}/${PN}-11.0-gcc46.patch"
109 + "${FILESDIR}/${PN}-11.0-uefi-support.patch"
110 + "${FILESDIR}/${PN}-add-nossp-cflags.patch" )
111 +
112 +boot0_use_enable() {
113 + use ${1} && mymakeopts="${mymakeopts} LOADER_${2}_SUPPORT=\"yes\""
114 + use ${1} || mymakeopts="${mymakeopts} WITHOUT_${2}= "
115 +}
116 +
117 +pkg_setup() {
118 + boot0_use_enable ieee1394 FIREWIRE
119 + boot0_use_enable zfs ZFS
120 + boot0_use_enable tftp TFTP
121 + boot0_use_enable bzip2 BZIP2
122 +}
123 +
124 +src_prepare() {
125 + sed -e '/-mno-align-long-strings/d' \
126 + -i "${S}"/i386/boot2/Makefile \
127 + -i "${S}"/i386/gptboot/Makefile \
128 + -i "${S}"/i386/gptzfsboot/Makefile \
129 + -i "${S}"/i386/zfsboot/Makefile || die
130 +
131 + mymakeopts="${mymakeopts} LOADER_NO_GELI_SUPPORT=yes"
132 + export MAKEOBJDIRPREFIX="${WORKDIR}/build"
133 +}
134 +
135 +src_compile() {
136 + strip-flags
137 + append-flags "-fno-strict-aliasing"
138 +
139 + cd "${WORKDIR}/lib/libstand" || die
140 + freebsd_src_compile
141 +
142 + CFLAGS="${CFLAGS} -I${WORKDIR}/lib/libstand"
143 + LDFLAGS="${LDFLAGS} -L${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libstand"
144 + export LIBSTAND="${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libstand/libstand.a"
145 +
146 + cd "${S}" || die
147 + NOFLAGSTRIP="yes" freebsd_src_compile
148 +}
149 +
150 +src_install() {
151 + dodir /boot/defaults
152 + freebsd_src_install FILESDIR=/boot
153 +
154 + cd "${WORKDIR}/sys/$(tc-arch-kernel)/conf" || die
155 + insinto /boot
156 + newins GENERIC.hints device.hints
157 +
158 + echo 'CONFIG_PROTECT="/boot/device.hints"' > "${T}"/50boot0
159 + doenvd "${T}"/50boot0
160 +}
161
162 diff --git a/sys-freebsd/boot0/files/boot0-11.0-gcc46.patch b/sys-freebsd/boot0/files/boot0-11.0-gcc46.patch
163 new file mode 100644
164 index 00000000..ec17d92
165 --- /dev/null
166 +++ b/sys-freebsd/boot0/files/boot0-11.0-gcc46.patch
167 @@ -0,0 +1,14 @@
168 +diff --git a/sys/boot/i386/boot2/Makefile b/sys/boot/i386/boot2/Makefile
169 +index ead9ad1..af5e021 100644
170 +--- a/sys/boot/i386/boot2/Makefile
171 ++++ b/sys/boot/i386/boot2/Makefile
172 +@@ -45,6 +45,9 @@ CFLAGS.gcc+= -Os \
173 + .if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} <= 40201
174 + CFLAGS.gcc+= -mno-align-long-strings
175 + .endif
176 ++.if ${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} >= 40600
177 ++CFLAGS.gcc+= -fno-asynchronous-unwind-tables
178 ++.endif
179 +
180 + CFLAGS.clang+= -Oz ${CLANG_OPT_SMALL}
181 +
182
183 diff --git a/sys-freebsd/boot0/files/boot0-11.0-uefi-support.patch b/sys-freebsd/boot0/files/boot0-11.0-uefi-support.patch
184 new file mode 100644
185 index 00000000..c7a69d6
186 --- /dev/null
187 +++ b/sys-freebsd/boot0/files/boot0-11.0-uefi-support.patch
188 @@ -0,0 +1,21 @@
189 +diff --git a/sys/boot/efi/Makefile b/sys/boot/efi/Makefile
190 +index 79ee9a9..f7789f1 100644
191 +--- a/sys/boot/efi/Makefile
192 ++++ b/sys/boot/efi/Makefile
193 +@@ -4,7 +4,7 @@
194 +
195 + # In-tree GCC does not support __attribute__((ms_abi)), but gcc newer
196 + # than 4.5 supports it.
197 +-.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 404500
198 ++.if ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 40500
199 +
200 + .if ${MACHINE_CPUARCH} == "aarch64" || ${MACHINE_CPUARCH} == "arm"
201 + .if ${MK_FDT} != "no"
202 +@@ -18,6 +18,6 @@ SUBDIR+= fdt
203 + SUBDIR+= libefi loader boot1
204 + .endif
205 +
206 +-.endif # ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 404500
207 ++.endif # ${COMPILER_TYPE} != "gcc" || ${COMPILER_VERSION} >= 40500
208 +
209 + .include <bsd.subdir.mk>
210
211 diff --git a/sys-freebsd/freebsd-bin/Manifest b/sys-freebsd/freebsd-bin/Manifest
212 index bc22b07..97dc452 100644
213 --- a/sys-freebsd/freebsd-bin/Manifest
214 +++ b/sys-freebsd/freebsd-bin/Manifest
215 @@ -5,4 +5,5 @@ DIST freebsd-lib-9.1.tar.bz2 3206685 SHA256 f31fa8107b4de711c548f6d0c1bb1f81d09f
216 DIST freebsd-sbin-8.2.tar.bz2 1211665 SHA256 8b7e21a66b4696e8763d29b8b02b2d35f29fc51820a194d1e469e7cace84c527 SHA512 c6643c29ab62344c98d8991708798730ee1c17e6478071718beeaa79788300a1f4ed2e6aeb8e39e3c216877d4ed2ac85b2a9531d534f1ac5125a508927898959 WHIRLPOOL 2a21cd0f15f95d66718031680ac87f1fe73f1e1b03cb012e1db1dd1bd2fe2bb7897457a8ba2f5a28c8806775611dca542cbadec16566c47ab9efa673e2cb53f3
217 DIST freebsd-sbin-9.1.tar.bz2 1273913 SHA256 45008b0733b232ef03707ef5fa3e5c889e3b3728393d736bd9a869ea83be6447 SHA512 9f186602b7de96f268c352ca386986652fddf5570e7eca1afa8c0d2bdc83b57df1198efe47f36dd5c7a6abf4f9c935f1c8207a4a12a6b2153bd6c3c6292719dc WHIRLPOOL 20920dfa9607a0ce854319cef29bbd77fb1b31f6f6cfd5ac60cbd678169e43929e215743fe636d0c224443f3e6149a8f07c292d647f7f901592795ac292699f9
218 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
219 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
220 DIST freebsd-ubin-9.1.tar.bz2 1910472 SHA256 ff6e586f213534b6ec2e65002c0dee64063d76ddad515c12221b1a80a1815e48 SHA512 74ae0aceec8597aa66c3f1ab313f0685a3c63d7273c36ae7baf8794275ad9bca241c60c3f6281cccf6d531d250d7611099977d3b1a27279cef3586401b6af05e WHIRLPOOL c85a3c9cf2bceff2c60ff03556bcc81d3aca22b0bce3c9538990071ac0a907236eee5ae7743ad22c5fd309b047ebf392aaaf2fe177ef5790ea869aff3da7e2fe
221
222 diff --git a/sys-freebsd/freebsd-bin/freebsd-bin-11.0.ebuild b/sys-freebsd/freebsd-bin/freebsd-bin-11.0.ebuild
223 new file mode 100644
224 index 00000000..d4bf7e3
225 --- /dev/null
226 +++ b/sys-freebsd/freebsd-bin/freebsd-bin-11.0.ebuild
227 @@ -0,0 +1,42 @@
228 +# Copyright 1999-2016 Gentoo Foundation
229 +# Distributed under the terms of the GNU General Public License v2
230 +# $Id$
231 +
232 +EAPI=5
233 +
234 +inherit bsdmk freebsd
235 +
236 +DESCRIPTION="FreeBSD /bin tools"
237 +SLOT="0"
238 +
239 +IUSE=""
240 +
241 +if [[ ${PV} != *9999* ]]; then
242 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
243 +fi
244 +
245 +EXTRACTONLY="
246 + bin/
247 + usr.bin/
248 + sbin/
249 + lib/
250 +"
251 +
252 +RDEPEND="=sys-freebsd/freebsd-lib-${RV}*
253 + >=dev-libs/libedit-20120311.3.0-r1
254 + sys-libs/ncurses:0=
255 + sys-apps/ed
256 + !app-misc/realpath
257 + !<sys-freebsd/freebsd-ubin-8"
258 +DEPEND="${RDEPEND}
259 + =sys-freebsd/freebsd-mk-defs-${RV}*
260 + >=sys-devel/flex-2.5.31-r2"
261 +
262 +S=${WORKDIR}/bin
263 +
264 +# csh and tcsh are provided by tcsh package, rmail is sendmail stuff.
265 +REMOVE_SUBDIRS="csh rmail ed freebsd-version"
266 +
267 +pkg_setup() {
268 + mymakeopts="${mymakeopts} WITHOUT_TCSH= WITHOUT_SENDMAIL= WITHOUT_RCMDS= "
269 +}
270
271 diff --git a/sys-freebsd/freebsd-cddl/Manifest b/sys-freebsd/freebsd-cddl/Manifest
272 index 1a47a31..fe99dff 100644
273 --- a/sys-freebsd/freebsd-cddl/Manifest
274 +++ b/sys-freebsd/freebsd-cddl/Manifest
275 @@ -9,6 +9,7 @@ DIST freebsd-lib-9.1.tar.bz2 3206685 SHA256 f31fa8107b4de711c548f6d0c1bb1f81d09f
276 DIST freebsd-sbin-8.2.tar.bz2 1211665 SHA256 8b7e21a66b4696e8763d29b8b02b2d35f29fc51820a194d1e469e7cace84c527 SHA512 c6643c29ab62344c98d8991708798730ee1c17e6478071718beeaa79788300a1f4ed2e6aeb8e39e3c216877d4ed2ac85b2a9531d534f1ac5125a508927898959 WHIRLPOOL 2a21cd0f15f95d66718031680ac87f1fe73f1e1b03cb012e1db1dd1bd2fe2bb7897457a8ba2f5a28c8806775611dca542cbadec16566c47ab9efa673e2cb53f3
277 DIST freebsd-sbin-9.1.tar.bz2 1273913 SHA256 45008b0733b232ef03707ef5fa3e5c889e3b3728393d736bd9a869ea83be6447 SHA512 9f186602b7de96f268c352ca386986652fddf5570e7eca1afa8c0d2bdc83b57df1198efe47f36dd5c7a6abf4f9c935f1c8207a4a12a6b2153bd6c3c6292719dc WHIRLPOOL 20920dfa9607a0ce854319cef29bbd77fb1b31f6f6cfd5ac60cbd678169e43929e215743fe636d0c224443f3e6149a8f07c292d647f7f901592795ac292699f9
278 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
279 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
280 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
281 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
282 DIST freebsd-ubin-8.2.tar.bz2 1808012 SHA256 6b99554f3ad6ee052069b347eb6e6219b71598d7b222acb90a24cbfc805c7b68 SHA512 48d0103323e820c431aa4f62d3be40cb3b200fb62e3de01f36c88760395bf2ba3367c51f3fa72da4dbccc2812176a051a12ca5cb7e84125c3e0fc78d4cab2c29 WHIRLPOOL ea8f3a29a37b42c2b5bcc0f2c343fa1538522157ef075363c94606a4620a590e9a03f856ce2494e3e727935b62431991d0aa9fde71de699e78b4fe225bdf1c2c
283
284 diff --git a/sys-freebsd/freebsd-cddl/files/freebsd-cddl-11.0-add-libs.patch b/sys-freebsd/freebsd-cddl/files/freebsd-cddl-11.0-add-libs.patch
285 new file mode 100644
286 index 00000000..46f2521
287 --- /dev/null
288 +++ b/sys-freebsd/freebsd-cddl/files/freebsd-cddl-11.0-add-libs.patch
289 @@ -0,0 +1,87 @@
290 +diff --git a/cddl/sbin/zfs/Makefile b/cddl/sbin/zfs/Makefile
291 +index 1e386e5..a4c08ee 100644
292 +--- a/cddl/sbin/zfs/Makefile
293 ++++ b/cddl/sbin/zfs/Makefile
294 +@@ -22,6 +22,6 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/fs/zfs
295 + CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/sys
296 + CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs
297 +
298 +-LIBADD= jail nvpair uutil zfs_core zfs
299 ++LIBADD= jail nvpair uutil zfs_core zfs umem avl
300 +
301 + .include <bsd.prog.mk>
302 +diff --git a/cddl/sbin/zpool/Makefile b/cddl/sbin/zpool/Makefile
303 +index ebf0f90..c70a3c4 100644
304 +--- a/cddl/sbin/zpool/Makefile
305 ++++ b/cddl/sbin/zpool/Makefile
306 +@@ -27,6 +27,6 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/uts/common/sys
307 + CFLAGS+= -I${.CURDIR}/../../../cddl/contrib/opensolaris/lib/libzpool/common
308 + CFLAGS+= -I${.CURDIR}/../../../cddl/contrib/opensolaris/cmd/stat/common
309 +
310 +-LIBADD= geom nvpair uutil zfs
311 ++LIBADD= geom nvpair uutil zfs umem avl zfs_core
312 +
313 + .include <bsd.prog.mk>
314 +diff --git a/cddl/usr.sbin/lockstat/Makefile b/cddl/usr.sbin/lockstat/Makefile
315 +index fc68904..9af6ff2 100644
316 +--- a/cddl/usr.sbin/lockstat/Makefile
317 ++++ b/cddl/usr.sbin/lockstat/Makefile
318 +@@ -21,6 +21,6 @@ CFLAGS+= -DNEED_ERRLOC -g
319 +
320 + #YFLAGS+= -d
321 +
322 +-LIBADD= elf dtrace rt
323 ++LIBADD= elf dtrace rt ctf
324 +
325 + .include <bsd.prog.mk>
326 +diff --git a/cddl/usr.sbin/plockstat/Makefile b/cddl/usr.sbin/plockstat/Makefile
327 +index 77b6139..7737efd 100644
328 +--- a/cddl/usr.sbin/plockstat/Makefile
329 ++++ b/cddl/usr.sbin/plockstat/Makefile
330 +@@ -18,6 +18,6 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/compat/opensolaris \
331 + -I${.CURDIR}/../../../cddl/lib/libdtrace \
332 + -I${.CURDIR}/../../../sys
333 +
334 +-LIBADD= dtrace proc
335 ++LIBADD= dtrace proc ctf
336 +
337 + .include <bsd.prog.mk>
338 +diff --git a/cddl/usr.sbin/zdb/Makefile b/cddl/usr.sbin/zdb/Makefile
339 +index 3609502..71526f7 100644
340 +--- a/cddl/usr.sbin/zdb/Makefile
341 ++++ b/cddl/usr.sbin/zdb/Makefile
342 +@@ -24,7 +24,7 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs
343 + CFLAGS+= -I${.CURDIR}/../../../cddl/contrib/opensolaris/head
344 + CFLAGS+= -I${.CURDIR}/../../lib/libumem
345 +
346 +-LIBADD= nvpair umem uutil zfs zpool
347 ++LIBADD= nvpair umem uutil zfs zpool avl zfs_core
348 +
349 + # Since there are many asserts in this program, it makes no sense to compile
350 + # it without debugging.
351 +diff --git a/cddl/usr.sbin/zfsd/Makefile.common b/cddl/usr.sbin/zfsd/Makefile.common
352 +index a545609..034d418 100644
353 +--- a/cddl/usr.sbin/zfsd/Makefile.common
354 ++++ b/cddl/usr.sbin/zfsd/Makefile.common
355 +@@ -35,7 +35,7 @@ CXXFLAGS= -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS}
356 +
357 + DPADD= ${LIBDEVDCTL} ${LIBZFS} ${LIBZFS_CORE} ${LIBUTIL} ${LIBGEOM} \
358 + ${LIBBSDXML} ${LIBSBUF} ${LIBNVPAIR} ${LIBUUTIL}
359 +-LIBADD= devdctl zfs zfs_core util geom bsdxml sbuf nvpair uutil
360 ++LIBADD= devdctl zfs zfs_core util geom bsdxml sbuf nvpair uutil umem avl
361 +
362 + cscope:
363 + find ${.CURDIR} -type f -a \( -name "*.[ch]" -o -name "*.cc" \) \
364 +diff --git a/cddl/usr.sbin/zhack/Makefile b/cddl/usr.sbin/zhack/Makefile
365 +index 02c51ac..d9b79a9 100644
366 +--- a/cddl/usr.sbin/zhack/Makefile
367 ++++ b/cddl/usr.sbin/zhack/Makefile
368 +@@ -23,7 +23,7 @@ CFLAGS+= -I${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/zfs
369 + CFLAGS+= -I${.CURDIR}/../../../cddl/contrib/opensolaris/head
370 + CFLAGS+= -I${.CURDIR}/../../lib/libumem
371 +
372 +-LIBADD= nvpair zfs zpool
373 ++LIBADD= nvpair zfs zpool umem uutil avl zfs_core
374 +
375 + CFLAGS+= -DDEBUG=1
376 + #DEBUG_FLAGS+= -g
377
378 diff --git a/sys-freebsd/freebsd-cddl/files/freebsd-cddl-11.0-workaround.patch b/sys-freebsd/freebsd-cddl/files/freebsd-cddl-11.0-workaround.patch
379 new file mode 100644
380 index 00000000..839b6b5
381 --- /dev/null
382 +++ b/sys-freebsd/freebsd-cddl/files/freebsd-cddl-11.0-workaround.patch
383 @@ -0,0 +1,12 @@
384 +diff --git a/cddl/usr.sbin/zfsd/Makefile.common b/cddl/usr.sbin/zfsd/Makefile.common
385 +index 6c71bdf..6b71908 100644
386 +--- a/cddl/usr.sbin/zfsd/Makefile.common
387 ++++ b/cddl/usr.sbin/zfsd/Makefile.common
388 +@@ -31,6 +31,7 @@ INCFLAGS+= -I${SRCDIR}/sys/cddl/contrib/opensolaris/uts/common/fs/zfs
389 + INCFLAGS+= -I${SRCDIR}/sys/cddl/contrib/opensolaris/uts/common/sys
390 +
391 + CFLAGS= -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS}
392 ++CXXFLAGS= -g -DNEED_SOLARIS_BOOLEAN ${INCFLAGS}
393 +
394 + DPADD= ${LIBDEVDCTL} ${LIBZFS} ${LIBZFS_CORE} ${LIBUTIL} ${LIBGEOM} \
395 + ${LIBBSDXML} ${LIBSBUF} ${LIBNVPAIR} ${LIBUUTIL}
396
397 diff --git a/sys-freebsd/freebsd-cddl/freebsd-cddl-11.0.ebuild b/sys-freebsd/freebsd-cddl/freebsd-cddl-11.0.ebuild
398 new file mode 100644
399 index 00000000..2efbb35
400 --- /dev/null
401 +++ b/sys-freebsd/freebsd-cddl/freebsd-cddl-11.0.ebuild
402 @@ -0,0 +1,79 @@
403 +# Copyright 1999-2016 Gentoo Foundation
404 +# Distributed under the terms of the GNU General Public License v2
405 +# $Id$
406 +
407 +EAPI=5
408 +
409 +inherit bsdmk freebsd toolchain-funcs multilib
410 +
411 +DESCRIPTION="FreeBSD CDDL (opensolaris/zfs) extra software"
412 +SLOT="0"
413 +
414 +IUSE="build"
415 +LICENSE="CDDL GPL-2"
416 +
417 +if [[ ${PV} != *9999* ]]; then
418 + KEYWORDS="~amd64-fbsd ~x86-fbsd"
419 +fi
420 +
421 +# sys is required.
422 +EXTRACTONLY="
423 + cddl/
424 + contrib/
425 + usr.bin/
426 + lib/
427 + sbin/
428 + sys/
429 +"
430 +
431 +RDEPEND="=sys-freebsd/freebsd-lib-${RV}*
432 + =sys-freebsd/freebsd-libexec-${RV}*
433 + build? ( sys-apps/baselayout )"
434 +
435 +DEPEND="${RDEPEND}
436 + =sys-freebsd/freebsd-mk-defs-${RV}*
437 + !build? ( =sys-freebsd/freebsd-sources-${RV}* )"
438 +
439 +S="${WORKDIR}/cddl"
440 +
441 +PATCHES=( "${FILESDIR}/${PN}-11.0-workaround.patch"
442 + "${FILESDIR}/${PN}-11.0-add-libs.patch" )
443 +
444 +pkg_setup() {
445 + # Add the required source files.
446 + use build && EXTRACTONLY+="include/ "
447 + [[ $(tc-getCXX) != *clang++* ]] && REMOVE_SUBDIRS="usr.sbin/zfsd"
448 +}
449 +
450 +src_prepare() {
451 + if [[ ! -e "${WORKDIR}/include" ]]; then
452 + # Link in include headers.
453 + ln -s "/usr/include" "${WORKDIR}/include" || die "Symlinking /usr/include.."
454 + fi
455 + for d in libavl libctf libdtrace libnvpair libumem libuutil libzfs libzfs_core libzpool; do
456 + LDFLAGS="${LDFLAGS} -L${S}/lib/${d}"
457 + done
458 +}
459 +
460 +src_compile() {
461 + cd "${S}"/lib || die
462 + freebsd_src_compile
463 + cd "${S}" || die
464 + freebsd_src_compile
465 +}
466 +
467 +src_install() {
468 + # Install libraries proper place
469 + local mylibdir=$(get_libdir)
470 + freebsd_src_install SHLIBDIR="/usr/${mylibdir}" LIBDIR="/usr/${mylibdir}"
471 +
472 + gen_usr_ldscript -a avl nvpair umem uutil zfs zpool zfs_core
473 +
474 + # Install zfs volinit script.
475 + newinitd "${FILESDIR}"/zvol.initd-9.0 zvol
476 +
477 + # Install zfs script
478 + newinitd "${FILESDIR}"/zfs.initd zfs
479 +
480 + keepdir /etc/zfs
481 +}
482
483 diff --git a/sys-freebsd/freebsd-lib/Manifest b/sys-freebsd/freebsd-lib/Manifest
484 index 65e15d2..f4a53d4 100644
485 --- a/sys-freebsd/freebsd-lib/Manifest
486 +++ b/sys-freebsd/freebsd-lib/Manifest
487 @@ -15,6 +15,7 @@ DIST freebsd-lib-EN-1606-libc.patch 249 SHA256 5ad0e95c5418ebd3edb06dc3f287b3fd8
488 DIST freebsd-libexec-8.2.tar.bz2 289147 SHA256 10b996d1d8cd044ee2e7a877e5e6ad2bf050cce9b3bd402a5e0dea7d290b595d SHA512 abe6cf5a268675d7dcb1c214c46fef47a3fb09b31947f5d8a0b938d352295efe0249beb5007649c52187bf4c221b6ebf074d18dfe9bafd168cae09ee02ab608d WHIRLPOOL 27e854fe465eb933dd8e27c5a09b063e4d3798b54e0914c79a9120dcdc34cc5d525a0c92da7b645ff7ab2ab4f34c7f7b2783012dfa5004407acd11150062b7ad
489 DIST freebsd-libexec-9.1.tar.bz2 304592 SHA256 71e6e9e41328c2148c54b81ad9b59f912a1d5f0d52e17ac07f223aa7a94b82be SHA512 7baa4160dda2610250dd52f445e24478e0f1ea10bce21fcd0e5d1b856f399b896adc334114de0c7f61a5637e4349bb1688fdbe5c72798d8568ae791114710b92 WHIRLPOOL d800f477ac5c9ad6dae3e0091c83e107609b5a1e3aa79e9533fcd10a8dd34ff7733ab9523eae7c292310fe94f6a529209cae6b9e8bac6b47244e59834593e74b
490 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
491 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
492 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
493 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
494 DIST freebsd-usbin-8.2.tar.bz2 2443024 SHA256 aa7cabf10f5c3a9daabea32e4de24d04ec312247842981476da666eff5054603 SHA512 bcb8ff3df54848b9107bbb52e5ced7a91e24bb181f06769b6997221729b8064ec17652eaf7500de3268cbcb63ff5760beb54d15fc78c27b02687b5b1067c74a6 WHIRLPOOL 20f5278e2a1dd387a75b44f10507958d6c0e84a2faa1bddbf808c14ab86d8dd14a956192911bbc1880f5f5f7bd05972dcbb4aec85d241f0dcf91bf4246883f0a
495
496 diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-bsdxml2expat.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-bsdxml2expat.patch
497 new file mode 100644
498 index 00000000..41a394b
499 --- /dev/null
500 +++ b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-bsdxml2expat.patch
501 @@ -0,0 +1,39 @@
502 +diff --git a/lib/libgeom/geom_xml2tree.c b/lib/libgeom/geom_xml2tree.c
503 +index 9dedb8e..d96420c 100644
504 +--- a/lib/libgeom/geom_xml2tree.c
505 ++++ b/lib/libgeom/geom_xml2tree.c
506 +@@ -43,7 +43,7 @@
507 + #include <sys/sbuf.h>
508 + #include <sys/sysctl.h>
509 + #include <err.h>
510 +-#include <bsdxml.h>
511 ++#include <expat.h>
512 + #include <libgeom.h>
513 +
514 + struct mystate {
515 +diff --git a/lib/libmt/mtlib.c b/lib/libmt/mtlib.c
516 +index d1fc0b1..89ac55e 100644
517 +--- a/lib/libmt/mtlib.c
518 ++++ b/lib/libmt/mtlib.c
519 +@@ -48,7 +48,7 @@ __FBSDID("$FreeBSD: stable/10/lib/libmt/mtlib.c 280438 2015-03-24 14:36:10Z ken
520 + #include <unistd.h>
521 + #include <stdint.h>
522 + #include <errno.h>
523 +-#include <bsdxml.h>
524 ++#include <expat.h>
525 + #include <mtlib.h>
526 +
527 + /*
528 +diff --git a/lib/lib80211/lib80211_regdomain.c b/lib/lib80211/lib80211_regdomain.c
529 +index c500d3f..fe1d37e 100644
530 +--- a/lib/lib80211/lib80211_regdomain.c
531 ++++ b/lib/lib80211/lib80211_regdomain.c
532 +@@ -40,7 +40,7 @@ static const char rcsid[] = "$FreeBSD: stable/11/lib/lib80211/lib80211_regdomain
533 + #include <err.h>
534 + #include <unistd.h>
535 +
536 +-#include <bsdxml.h>
537 ++#include <expat.h>
538 +
539 + #include "lib80211_regdomain.h"
540 +
541
542 diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-liblink.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-liblink.patch
543 new file mode 100644
544 index 00000000..da495e4
545 --- /dev/null
546 +++ b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-liblink.patch
547 @@ -0,0 +1,62 @@
548 +diff --git a/lib/libproc/Makefile b/lib/libproc/Makefile
549 +index 2dedf11..275f4c3 100644
550 +--- a/lib/libproc/Makefile
551 ++++ b/lib/libproc/Makefile
552 +@@ -15,6 +15,7 @@ SRCS= proc_bkpt.c \
553 + INCS= libproc.h
554 +
555 + CFLAGS+= -I${.CURDIR}
556 ++CFLAGS+= -I${.CURDIR}/../libelf
557 +
558 + .if ${MK_CXX} == "no"
559 + CFLAGS+= -DNO_CXA_DEMANGLE
560 +@@ -28,6 +29,9 @@ LIBADD+= elf rtld_db util
561 +
562 + .if ${MK_CDDL} != "no"
563 + LIBADD+= ctf
564 ++LDADD+= -lelf
565 ++LDFLAGS+= -L${.OBJDIR}/../libelf
566 ++
567 + IGNORE_PRAGMA= YES
568 + CFLAGS+= -I${.CURDIR}/../../cddl/contrib/opensolaris/lib/libctf/common \
569 + -I${.CURDIR}/../../sys/cddl/contrib/opensolaris/uts/common \
570 +diff --git a/lib/libprocstat/Makefile b/lib/libprocstat/Makefile
571 +index 1829883..d0065a3 100644
572 +--- a/lib/libprocstat/Makefile
573 ++++ b/lib/libprocstat/Makefile
574 +@@ -17,6 +17,8 @@ VERSION_DEF= ${.CURDIR}/Versions.def
575 + SYMBOL_MAPS= ${.CURDIR}/Symbol.map
576 +
577 + INCS= libprocstat.h
578 ++CFLAGS+= -I${.CURDIR}/../libelf
579 ++LDFLAGS+= -L${.OBJDIR}/../libelf
580 + CFLAGS+= -I. -I${.CURDIR} -D_KVM_VNODE
581 + SHLIB_MAJOR= 1
582 +
583 +diff --git a/lib/librtld_db/Makefile b/lib/librtld_db/Makefile
584 +index 0a8ed95..11baf5b 100644
585 +--- a/lib/librtld_db/Makefile
586 ++++ b/lib/librtld_db/Makefile
587 +@@ -11,6 +11,9 @@ SRCS= rtld_db.c
588 + INCS= rtld_db.h
589 +
590 + CFLAGS+= -I${.CURDIR}
591 ++CFLAGS+= -I${.CURDIR}/../libelf
592 ++LDADD+= -lutil -lproc
593 ++LDFLAGS+= -L${.OBJDIR}/../libutil -L${.OBJDIR}/../libproc
594 + # Avoid circular dependency, we only need the libproc.h header here.
595 + CFLAGS+= -I${.CURDIR:H}/libproc
596 +
597 +diff --git a/lib/libtelnet/Makefile b/lib/libtelnet/Makefile
598 +index f84aee3..c36ade9 100644
599 +--- a/lib/libtelnet/Makefile
600 ++++ b/lib/libtelnet/Makefile
601 +@@ -14,6 +14,8 @@ INTERNALLIB=
602 + SRCS= genget.c getent.c misc.c
603 + CFLAGS+= -I${TELNETDIR}
604 +
605 ++CFLAGS+= -I${.CURDIR}/../libmp
606 ++
607 + WARNS?= 2
608 +
609 + .if ${MK_OPENSSL} != "no"
610
611 diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-libproc-libcxx.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-libproc-libcxx.patch
612 new file mode 100644
613 index 00000000..013ad20
614 --- /dev/null
615 +++ b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-libproc-libcxx.patch
616 @@ -0,0 +1,13 @@
617 +diff --git a/lib/libproc/Makefile b/lib/libproc/Makefile
618 +index e3b2578..acd76e8 100644
619 +--- a/lib/libproc/Makefile
620 ++++ b/lib/libproc/Makefile
621 +@@ -18,7 +18,7 @@ CFLAGS+= -I${.CURDIR}
622 +
623 + .if ${MK_CXX} == "no"
624 + CFLAGS+= -DNO_CXA_DEMANGLE
625 +-.elif ${MK_LIBCPLUSPLUS} != "no"
626 ++.elif ${COMPILER_TYPE} == "clang"
627 + LIBADD+= cxxrt
628 + .else
629 + LIBADD+= supcplusplus
630
631 diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-libsysdecode.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-libsysdecode.patch
632 new file mode 100644
633 index 00000000..d90aa31
634 --- /dev/null
635 +++ b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-libsysdecode.patch
636 @@ -0,0 +1,22 @@
637 +diff --git a/lib/libsysdecode/Makefile b/lib/libsysdecode/Makefile
638 +index e3bfe00..51fc5f0 100644
639 +--- a/lib/libsysdecode/Makefile
640 ++++ b/lib/libsysdecode/Makefile
641 +@@ -8,7 +8,7 @@ LIB= sysdecode
642 + SRCS= errno.c ioctl.c syscallnames.c utrace.c
643 + INCS= sysdecode.h
644 +
645 +-CFLAGS+= -I${.CURDIR}/../../sys
646 ++CFLAGS+= -I${.CURDIR}/../../sys -I${.CURDIR}
647 +
648 + MAN+= sysdecode.3 \
649 + sysdecode_abi_to_freebsd_errno.3 \
650 +@@ -37,7 +37,7 @@ CFLAGS.gcc+= ${CFLAGS.gcc.${.IMPSRC}}
651 +
652 + ioctl.c: mkioctls
653 + env MACHINE=${MACHINE} CPP="${CPP}" \
654 +- /bin/sh ${.CURDIR}/mkioctls ${DESTDIR}${INCLUDEDIR} > ${.TARGET}
655 ++ /bin/sh ${.CURDIR}/mkioctls ${.CURDIR}/../../include > ${.TARGET}
656 +
657 + beforedepend: ioctl.c
658 +
659
660 diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-workaround.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-workaround.patch
661 new file mode 100644
662 index 00000000..05f817e
663 --- /dev/null
664 +++ b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.0-workaround.patch
665 @@ -0,0 +1,12 @@
666 +diff --git a/lib/libdevdctl/event.cc b/lib/libdevdctl/event.cc
667 +index a8cb447..d56df2e 100644
668 +--- a/lib/libdevdctl/event.cc
669 ++++ b/lib/libdevdctl/event.cc
670 +@@ -50,6 +50,7 @@
671 + #include <syslog.h>
672 + #include <unistd.h>
673 +
674 ++#include <cstdio>
675 + #include <cstdarg>
676 + #include <cstring>
677 + #include <iostream>
678
679 diff --git a/sys-freebsd/freebsd-lib/freebsd-lib-11.0.ebuild b/sys-freebsd/freebsd-lib/freebsd-lib-11.0.ebuild
680 new file mode 100644
681 index 00000000..5265af2
682 --- /dev/null
683 +++ b/sys-freebsd/freebsd-lib/freebsd-lib-11.0.ebuild
684 @@ -0,0 +1,644 @@
685 +# Copyright 1999-2016 Gentoo Foundation
686 +# Distributed under the terms of the GNU General Public License v2
687 +# $Id$
688 +
689 +EAPI=5
690 +
691 +inherit bsdmk freebsd flag-o-matic multilib toolchain-funcs eutils multibuild multilib-build
692 +
693 +DESCRIPTION="FreeBSD's base system libraries"
694 +SLOT="0"
695 +LICENSE="BSD zfs? ( CDDL )"
696 +
697 +# Security Advisory and Errata patches.
698 +# UPSTREAM_PATCHES=()
699 +
700 +# Crypto is needed to have an internal OpenSSL header
701 +# sys is needed for libalias, probably we can just extract that instead of
702 +# extracting the whole tarball
703 +if [[ ${PV} != *9999* ]]; then
704 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
705 + SRC_URI="${SRC_URI}
706 + $(freebsd_upstream_patches)"
707 +fi
708 +
709 +EXTRACTONLY="
710 + lib/
711 + contrib/
712 + crypto/
713 + libexec/
714 + etc/
715 + include/
716 + usr.sbin/
717 + gnu/
718 + secure/
719 +"
720 +
721 +if [ "${CATEGORY#*cross-}" = "${CATEGORY}" ]; then
722 + RDEPEND="ssl? ( dev-libs/openssl:0= )
723 + hesiod? ( net-dns/hesiod )
724 + kerberos? ( app-crypt/heimdal )
725 + usb? ( !dev-libs/libusb )
726 + zfs? ( =sys-freebsd/freebsd-cddl-${RV}* )
727 + >=dev-libs/expat-2.0.1
728 + >=dev-util/dialog-1.2.20150225
729 + =sys-freebsd/freebsd-libexec-${RV}*
730 + !sys-libs/libutempter
731 + !dev-libs/libelf
732 + !dev-libs/libexecinfo
733 + !dev-libs/libiconv
734 + !sys-freebsd/freebsd-headers"
735 + DEPEND="${RDEPEND}
736 + >=sys-devel/flex-2.5.31-r2
737 + =sys-freebsd/freebsd-sources-${RV}*"
738 + RDEPEND="${RDEPEND}
739 + =sys-freebsd/freebsd-share-${RV}*
740 + >=virtual/libiconv-0-r2"
741 +else
742 + EXTRACTONLY+="sys/ "
743 +fi
744 +
745 +DEPEND="${DEPEND}
746 + userland_GNU? ( sys-apps/mtree )
747 + =sys-freebsd/freebsd-mk-defs-${RV}*"
748 +
749 +S="${WORKDIR}/lib"
750 +
751 +export CTARGET=${CTARGET:-${CHOST}}
752 +if [ "${CTARGET}" = "${CHOST}" -a "${CATEGORY#*cross-}" != "${CATEGORY}" ]; then
753 + export CTARGET=${CATEGORY/cross-}
754 +fi
755 +
756 +IUSE="atm bluetooth ssl hesiod ipv6 kerberos usb netware
757 + build crosscompile_opts_headers-only zfs
758 + userland_GNU userland_BSD"
759 +
760 +QA_DT_NEEDED="lib/libc.so.7 usr/lib32/libc.so.7"
761 +
762 +pkg_setup() {
763 + # Add the required source files.
764 + use build && EXTRACTONLY+="sys/ "
765 + use zfs && EXTRACTONLY+="cddl/ "
766 +
767 + [ -c /dev/zero ] || \
768 + die "You forgot to mount /dev; the compiled libc would break."
769 +
770 + if ! use ssl && use kerberos; then
771 + eerror "If you want kerberos support you need to enable ssl support, too."
772 + fi
773 +
774 + use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= "
775 + use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= "
776 + use hesiod || mymakeopts="${mymakeopts} WITHOUT_HESIOD= "
777 + use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6_SUPPORT= "
778 + use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS_SUPPORT= WITHOUT_GSSAPI= "
779 + use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= "
780 + use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= "
781 + use usb || mymakeopts="${mymakeopts} WITHOUT_USB= "
782 + use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= "
783 +
784 + mymakeopts="${mymakeopts} WITHOUT_SENDMAIL= WITHOUT_CLANG= WITHOUT_LIBCPLUSPLUS= WITHOUT_LDNS= WITHOUT_UNBOUND= "
785 +
786 + if [ "${CTARGET}" != "${CHOST}" ]; then
787 + mymakeopts="${mymakeopts} MACHINE=$(tc-arch-kernel ${CTARGET})"
788 + mymakeopts="${mymakeopts} MACHINE_ARCH=$(tc-arch-kernel ${CTARGET})"
789 + fi
790 +}
791 +
792 +PATCHES=(
793 + "${FILESDIR}/${PN}-6.0-pmc.patch"
794 + "${FILESDIR}/${PN}-10.0-atfcxx.patch"
795 + "${FILESDIR}/${PN}-9.0-bluetooth.patch"
796 + "${FILESDIR}/${PN}-11.0-workaround.patch"
797 + "${FILESDIR}/${PN}-11.0-bsdxml2expat.patch"
798 + "${FILESDIR}/${PN}-11.0-libsysdecode.patch"
799 + "${FILESDIR}/${PN}-11.0-libproc-libcxx.patch"
800 + "${FILESDIR}/${PN}-add-nossp-cflags.patch"
801 + )
802 +# Here we disable and remove source which we don't need or want
803 +# In order:
804 +# - ncurses stuff
805 +# - libexpat creates a bsdxml library which is the same as expat
806 +# - archiving libraries (have their own ebuild)
807 +# - sendmail libraries (they are installed by sendmail)
808 +# - SNMP library and dependency (have their own ebuilds)
809 +# - libstand: static library, 32bits on amd64 used for boot0, we build it from
810 +# boot0 instead.
811 +#
812 +# The rest are libraries we already have somewhere else because
813 +# they are contribution.
814 +REMOVE_SUBDIRS="ncurses \
815 + libexpat \
816 + libz libbz2 libarchive liblzma \
817 + libsm libsmdb libsmutil \
818 + libbegemot libbsnmp \
819 + libpam libpcap libwrap libmagic \
820 + libcom_err
821 + libedit
822 + libstand
823 + libgssapi"
824 +
825 +# Are we building a cross-compiler?
826 +is_crosscompile() {
827 + [ "${CATEGORY#*cross-}" != "${CATEGORY}" ]
828 +}
829 +
830 +src_prepare() {
831 + # gcc-5.0 or later, Workaround for critical issue. bug 573358.
832 + use x86-fbsd && [[ "$(gcc-major-version)" -ge 5 ]] && replace-flags -O? -O1
833 +
834 + sed -i.bak -e 's:-o/dev/stdout:-t:' "${S}/libc/net/Makefile.inc"
835 +
836 + # Upstream Display Managers default to using VT7
837 + # We should make FreeBSD allow this by default
838 + local x=
839 + for x in "${WORKDIR}"/etc/etc.*/ttys ; do
840 + sed -i.bak \
841 + -e '/ttyv5[[:space:]]/ a\
842 +# Display Managers default to VT7.\
843 +# If you use the xdm init script, keep ttyv6 commented out\
844 +# unless you force a different VT for the DM being used.' \
845 + -e '/^ttyv[678][[:space:]]/ s/^/# /' "${x}" \
846 + || die "Failed to sed ${x}"
847 + rm "${x}".bak
848 + done
849 +
850 + # This one is here because it also
851 + # patches "${WORKDIR}/include"
852 + cd "${WORKDIR}"
853 + epatch "${FILESDIR}/${PN}-includes.patch"
854 +
855 + # Don't install the hesiod man page or header
856 + rm "${WORKDIR}"/include/hesiod.h || die
857 + sed -i.bak -e 's:hesiod.h::' "${WORKDIR}"/include/Makefile || die
858 + sed -i.bak -e 's:hesiod.c::' -e 's:hesiod.3::' \
859 + "${WORKDIR}"/lib/libc/net/Makefile.inc || die
860 +
861 + # Fix the Makefiles of these few libraries that will overwrite our LDADD.
862 + cd "${S}"
863 + for dir in libradius libtacplus libcam libdevstat libfetch libgeom libmemstat libopie \
864 + libsmb libprocstat libulog; do sed -i.bak -e 's:LDADD=:LDADD+=:g' "${dir}/Makefile" || \
865 + die "Problem fixing \"${dir}/Makefile"
866 + done
867 + # Call LD with LDFLAGS, rename them to RAW_LDFLAGS
868 + sed -e 's/LDFLAGS/RAW_LDFLAGS/g' \
869 + -i "${S}/csu/i386/Makefile" || die
870 +
871 + if install --version 2> /dev/null | grep -q GNU; then
872 + sed -i.bak -e 's:${INSTALL} -C:${INSTALL}:' "${WORKDIR}/include/Makefile"
873 + fi
874 +
875 + # Try to fix sed calls for GNU sed. Do it only with GNU userland and force
876 + # BSD's sed on BSD.
877 + cd "${S}"
878 + if [[ ${CBUILD:-${CHOST}} != *bsd* ]]; then
879 + find . -name Makefile -exec sed -ibak 's/sed -i /sed -i/' {} \;
880 + sed -i -e 's/-i ""/-i""/' "${S}/csu/Makefile.inc" || die
881 + fi
882 +
883 + if use build; then
884 + cd "${WORKDIR}"
885 + # This patch has to be applied on ${WORKDIR}/sys, so we do it here since it
886 + # shouldn't be a symlink to /usr/src/sys (which should be already patched)
887 + epatch "${FILESDIR}"/freebsd-sources-9.0-sysctluint.patch
888 + return 0
889 + fi
890 +
891 + if ! is_crosscompile ; then
892 + if [[ ! -e "${WORKDIR}/sys" ]]; then
893 + ln -s "${SYSROOT}/usr/src/sys" "${WORKDIR}/sys" || die "Couldn't make sys symlink!"
894 + fi
895 + else
896 + sed -i.bak -e "s:/usr/include:/usr/${CTARGET}/usr/include:g" \
897 + "${S}/libc/rpc/Makefile.inc" \
898 + "${S}/libc/yp/Makefile.inc"
899 + fi
900 +}
901 +
902 +bootstrap_lib() {
903 + for i ; do
904 + cd "${WORKDIR}/${i}" || die "missing ${i}"
905 + freebsd_src_compile
906 + append-ldflags "-L${MAKEOBJDIRPREFIX}/${WORKDIR}/${i}"
907 + done
908 +}
909 +
910 +get_csudir() {
911 + if [ -d "${WORKDIR}/lib/csu/$1-elf" ]; then
912 + echo "lib/csu/$1-elf"
913 + else
914 + echo "lib/csu/$1"
915 + fi
916 +}
917 +
918 +bootstrap_csu() {
919 + local csudir="$(get_csudir $(tc-arch-kernel ${CTARGET}))"
920 + export RAW_LDFLAGS=$(raw-ldflags)
921 + bootstrap_lib "${csudir}"
922 +
923 + CFLAGS="${CFLAGS} -B ${MAKEOBJDIRPREFIX}/${WORKDIR}/${csudir}"
924 + append-ldflags "-B ${MAKEOBJDIRPREFIX}/${WORKDIR}/${csudir}"
925 +
926 + bootstrap_lib "gnu/lib/csu"
927 +
928 + cd "${MAKEOBJDIRPREFIX}/${WORKDIR}/gnu/lib/csu"
929 + for i in *.So ; do
930 + ln -s $i ${i%.So}S.o
931 + done
932 + CFLAGS="${CFLAGS} -B ${MAKEOBJDIRPREFIX}/${WORKDIR}/gnu/lib/csu"
933 + append-ldflags "-B ${MAKEOBJDIRPREFIX}/${WORKDIR}/gnu/lib/csu"
934 +}
935 +
936 +# Compile libssp_nonshared.a and add it's path to LDFLAGS.
937 +bootstrap_libssp_nonshared() {
938 + bootstrap_lib "gnu/lib/libssp/libssp_nonshared"
939 +}
940 +
941 +bootstrap_libgcc() {
942 + bootstrap_lib "lib/libcompiler_rt"
943 + cd "${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libcompiler_rt" || die
944 + ln -s libcompiler_rt.a libgcc.a || die
945 +
946 + bootstrap_lib "lib/libc" "gnu/lib/libgcc"
947 +}
948 +
949 +bootstrap_libthr() {
950 + bootstrap_lib "lib/libthr"
951 + cd "${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libthr" || die
952 + ln -s libthr.so libpthread.so
953 +}
954 +
955 +# What to build for a cross-compiler.
956 +# We also need the csu but this has to be handled separately.
957 +CROSS_SUBDIRS="lib/libc lib/msun gnu/lib/libssp/libssp_nonshared lib/libthr lib/libutil lib/librt lib/libc_nonshared"
958 +
959 +# What to build for non-default ABIs.
960 +NON_NATIVE_SUBDIRS="${CROSS_SUBDIRS} gnu/lib/csu lib/libcompiler_rt gnu/lib/libgcc lib/libmd lib/libcrypt lib/libsbuf lib/libcam lib/libelf lib/libiconv_modules"
961 +
962 +# Subdirs for a native build:
963 +NATIVE_SUBDIRS="lib gnu/lib/libssp/libssp_nonshared gnu/lib/libregex gnu/lib/csu gnu/lib/libgcc lib/libiconv_modules"
964 +
965 +# Is my $ABI native ?
966 +is_native_abi() {
967 + is_crosscompile && return 1
968 + multilib_is_native_abi
969 +}
970 +
971 +# Do we need to bootstrap the csu and libssp_nonshared?
972 +need_bootstrap() {
973 + is_crosscompile || use build || { ! is_native_abi && ! has_version '>=sys-freebsd/freebsd-lib-9.1-r8[multilib]' && ! has_version ">=sys-freebsd/freebsd-lib-9.1-r11[${MULTILIB_USEDEP}]" ; } || has_version "<${CATEGORY}/${P}"
974 +}
975 +
976 +# Get the subdirs we are building.
977 +get_subdirs() {
978 + local ret=""
979 + if is_native_abi ; then
980 + # If we are building for the native ABI, build everything
981 + ret="${NATIVE_SUBDIRS}"
982 + elif is_crosscompile ; then
983 + # With a cross-compiler we only build the very core parts.
984 + ret="${CROSS_SUBDIRS}"
985 + if [ "${EBUILD_PHASE}" = "install" ]; then
986 + # Add the csu dir first when installing. We treat it separately for
987 + # compiling.
988 + ret="$(get_csudir $(tc-arch-kernel ${CTARGET})) ${ret}"
989 + fi
990 + else
991 + # For the non-native ABIs we only build the csu parts and very core
992 + # libraries for now.
993 + ret="${NON_NATIVE_SUBDIRS} $(get_csudir $(tc-arch-kernel ${CHOST}))"
994 + fi
995 + echo "${ret}"
996 +}
997 +
998 +# Bootstrap the core libraries and setup the flags so that the other parts can
999 +# build against it.
1000 +do_bootstrap() {
1001 + einfo "Bootstrapping on ${CHOST} for ${CTARGET}"
1002 + if ! is_crosscompile ; then
1003 + # Pre-install headers, but not when building a cross-compiler since we
1004 + # assume they have been installed in the previous pass.
1005 + einfo "Pre-installing includes in include_proper_${ABI}"
1006 + mkdir "${WORKDIR}/include_proper_${ABI}" || die
1007 + CTARGET="${CHOST}" install_includes "/include_proper_${ABI}"
1008 + CFLAGS="${CFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}"
1009 + [[ $(tc-getCXX) = *clang++* ]] && CXXFLAGS="${CXXFLAGS} -isystem /usr/include/c++/v1"
1010 + CXXFLAGS="${CXXFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}"
1011 + mymakeopts="${mymakeopts} RPCDIR=${WORKDIR}/include_proper_${ABI}/rpcsvc"
1012 + fi
1013 + bootstrap_csu
1014 + bootstrap_libssp_nonshared
1015 + is_crosscompile && bootstrap_lib "lib/libc"
1016 + is_crosscompile || is_native_abi || bootstrap_libgcc
1017 + is_native_abi || bootstrap_libthr
1018 +}
1019 +
1020 +# Compile it. Assume we have the toolchain setup correctly.
1021 +do_compile() {
1022 + # Bootstrap if needed, otherwise assume the system headers are in
1023 + # /usr/include.
1024 + if need_bootstrap ; then
1025 + do_bootstrap
1026 + else
1027 + CFLAGS="${CFLAGS} -isystem /usr/include"
1028 + [[ $(tc-getCXX) = *clang++* ]] && CXXFLAGS="${CXXFLAGS} -isystem /usr/include/c++/v1"
1029 + CXXFLAGS="${CXXFLAGS} -isystem /usr/include"
1030 + fi
1031 +
1032 + export RAW_LDFLAGS=$(raw-ldflags)
1033 +
1034 + # Everything is now setup, build it!
1035 + for i in $(get_subdirs) ; do
1036 + einfo "Building in ${i}... with CC=${CC} and CFLAGS=${CFLAGS}"
1037 + cd "${WORKDIR}/${i}/" || die "missing ${i}."
1038 + freebsd_src_compile || die "make ${i} failed"
1039 + done
1040 +}
1041 +
1042 +src_compile() {
1043 + # Does not work with GNU sed
1044 + # Force BSD's sed on BSD.
1045 + if [[ ${CBUILD:-${CHOST}} == *bsd* ]]; then
1046 + export ESED=/usr/bin/sed
1047 + unalias sed
1048 + fi
1049 +
1050 + use usb && export NON_NATIVE_SUBDIRS="${NON_NATIVE_SUBDIRS} lib/libusb lib/libusbhid"
1051 +
1052 + cd "${WORKDIR}/include"
1053 + $(freebsd_get_bmake) CC="$(tc-getCC)" SRCTOP="${WORKDIR}" || die "make include failed"
1054 +
1055 + use crosscompile_opts_headers-only && return 0
1056 +
1057 + # Bug #270098
1058 + append-flags $(test-flags -fno-strict-aliasing)
1059 +
1060 + # Bug #324445
1061 + append-flags $(test-flags -fno-strict-overflow)
1062 +
1063 + # strip flags and do not do it later, we only add safe, and in fact
1064 + # needed flags after all
1065 + strip-flags
1066 + export NOFLAGSTRIP=yes
1067 + if is_crosscompile ; then
1068 + export YACC='yacc -by'
1069 + CHOST=${CTARGET} tc-export CC LD CXX RANLIB
1070 + mymakeopts="${mymakeopts} NLS="
1071 + CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include"
1072 + CXXFLAGS="${CXXFLAGS} -isystem /usr/${CTARGET}/usr/include"
1073 + append-ldflags "-L${WORKDIR}/${CHOST}/${WORKDIR}/lib/libc"
1074 + fi
1075 +
1076 + if is_crosscompile ; then
1077 + do_compile
1078 + else
1079 + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) )
1080 + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper do_compile
1081 + fi
1082 +}
1083 +
1084 +gen_libc_ldscript() {
1085 + # Parameters:
1086 + # $1 = target libdir
1087 + # $2 = source libc dir
1088 + # $3 = source libssp_nonshared dir
1089 +
1090 + # Clear the symlink.
1091 + rm -f "${DESTDIR}/$2/libc.so" || die
1092 +
1093 + # Move the library if needed
1094 + if [ "$1" != "$2" ] ; then
1095 + mv "${DESTDIR}/$2/libc.so.7" "${DESTDIR}/$1/" || die
1096 + fi
1097 +
1098 + # Generate libc.so ldscript for inclusion of libssp_nonshared.a when linking
1099 + # this is done to avoid having to touch gcc spec file as it is currently
1100 + # done on FreeBSD upstream, mostly because their binutils aren't able to
1101 + # cope with linker scripts yet.
1102 + # Taken from toolchain-funcs.eclass:
1103 + local output_format
1104 + output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p')
1105 + [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )"
1106 +
1107 + # iconv symbol provided by libc_nonshared.a.
1108 + # http://svnweb.freebsd.org/base?view=revision&amp;revision=258283
1109 + cat > "${DESTDIR}/$2/libc.so" <<-END_LDSCRIPT
1110 +/* GNU ld script
1111 + SSP (-fstack-protector) requires __stack_chk_fail_local to be local.
1112 + GCC invokes this symbol in a non-PIC way, which results in TEXTRELs if
1113 + this symbol was provided by a shared libc. So we link in
1114 + libssp_nonshared.a from here.
1115 + */
1116 +${output_format}
1117 +GROUP ( /$1/libc.so.7 /$3/libc_nonshared.a /$3/libssp_nonshared.a )
1118 +END_LDSCRIPT
1119 +}
1120 +
1121 +header_list=""
1122 +
1123 +move_header() {
1124 + local dirname=$(dirname ${1})
1125 + local filename=$(basename ${1})
1126 +
1127 + if [ ! -d "${dirname}/${ABI}" ] ; then
1128 + mkdir "${dirname}/${ABI}" || die
1129 + fi
1130 +
1131 + mv "${1}" "${dirname}/${ABI}/" || die
1132 +
1133 + export header_list="${header_list} ${1}"
1134 +}
1135 +
1136 +make_header_template() {
1137 + cat <<-END_HEADER
1138 +/*
1139 + * Wrapped header for multilib support.
1140 + * See the real headers included below.
1141 + */
1142 +
1143 +#if defined(__x86_64__)
1144 + @ABI_amd64_fbsd@
1145 +#elif defined(__i386__)
1146 + @ABI_x86_fbsd@
1147 +#else
1148 + @ABI_${DEFAULT_ABI}@
1149 +#endif
1150 +END_HEADER
1151 +}
1152 +
1153 +wrap_header() {
1154 + local dirname=$(dirname ${1})
1155 + local filename=$(basename ${1})
1156 +
1157 + if [ -n "${dirname#.}" ] ; then
1158 + dirname="${dirname}/${2}"
1159 + else
1160 + dirname="${2}"
1161 + fi
1162 +
1163 + if [ -f "${dirname}/${filename}" ] ; then
1164 + sed -e "s:@ABI_${2}@:#include <${dirname}/${filename}>:" ${1}
1165 + else
1166 + cat ${1}
1167 + fi
1168 +}
1169 +
1170 +wrap_header_end() {
1171 + sed -e "s:@ABI_.*@:#error \"Sorry, no support for your ABI.\":" ${1}
1172 +}
1173 +
1174 +do_install() {
1175 + if is_crosscompile ; then
1176 + INCLUDEDIR="/usr/${CTARGET}/usr/include"
1177 + else
1178 + INCLUDEDIR="/usr/include"
1179 + fi
1180 +
1181 + dodir ${INCLUDEDIR}
1182 + CTARGET="${CHOST}" \
1183 + install_includes ${INCLUDEDIR}
1184 +
1185 + is_crosscompile && use crosscompile_opts_headers-only && return 0
1186 +
1187 + # Install a libusb.pc for better compat with Linux's libusb
1188 + if use usb ; then
1189 + dodir /usr/$(get_libdir)/pkgconfig
1190 + sed -i.bkp "s:^libdir=.*:libdir=/usr/$(get_libdir):g" "${S}"/libusb/libusb-*.pc
1191 + fi
1192 +
1193 + for i in $(get_subdirs) ; do
1194 + if [[ ${i} != *libiconv_modules* ]] ; then
1195 + einfo "Installing in ${i}..."
1196 + cd "${WORKDIR}/${i}/" || die "missing ${i}."
1197 + freebsd_src_install || die "Install ${i} failed"
1198 + fi
1199 + done
1200 +
1201 + if ! is_crosscompile; then
1202 + local mymakeopts_save="${mymakeopts}"
1203 + mymakeopts="${mymakeopts} SHLIBDIR=/usr/$(get_libdir)/i18n LIBDIR=/usr/$(get_libdir)/i18n"
1204 +
1205 + einfo "Installing in lib/libiconv_modules..."
1206 + cd "${WORKDIR}/lib/libiconv_modules/" || die "missing libiconv_modules."
1207 + freebsd_src_install || die "Install lib/libiconv_modules failed"
1208 +
1209 + mymakeopts="${mymakeopts_save}"
1210 + fi
1211 +
1212 + if ! is_crosscompile ; then
1213 + if ! multilib_is_native_abi ; then
1214 + DESTDIR="${D}" gen_libc_ldscript "usr/$(get_libdir)" "usr/$(get_libdir)" "usr/$(get_libdir)"
1215 + else
1216 + dodir "$(get_libdir)"
1217 + DESTDIR="${D}" gen_libc_ldscript "$(get_libdir)" "usr/$(get_libdir)" "usr/$(get_libdir)"
1218 + fi
1219 + else
1220 + CHOST=${CTARGET} DESTDIR="${D}/usr/${CTARGET}/" gen_libc_ldscript "usr/lib" "usr/lib" "usr/lib"
1221 + # We're done for the cross libc here.
1222 + return 0
1223 + fi
1224 +
1225 + # Generate ldscripts for core libraries that will go in /
1226 + multilib_is_native_abi && \
1227 + gen_usr_ldscript -a alias cam geom ipsec jail kiconv \
1228 + kvm m md procstat sbuf thr ufs util elf
1229 +
1230 + if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]] ; then
1231 + cd "${D}/usr/include"
1232 + for i in machine/*.h fenv.h ; do
1233 + move_header ${i}
1234 + done
1235 + if multilib_is_native_abi ; then
1236 + # Supposedly the last one!
1237 + local uniq_headers="$(echo ${header_list} | tr ' ' '\n' | sort | uniq | tr '\n' ' ')"
1238 + for j in ${uniq_headers} ; do
1239 + make_header_template > ${j}
1240 + for i in $(get_all_abis) ; do
1241 + wrap_header ${j} ${i} > ${j}.new
1242 + cp ${j}.new ${j}
1243 + rm -f ${j}.new
1244 + done
1245 + wrap_header_end ${j} > ${j}.new
1246 + cp ${j}.new ${j}
1247 + rm -f ${j}.new
1248 + done
1249 + fi
1250 + fi
1251 +}
1252 +
1253 +src_install() {
1254 + if is_crosscompile ; then
1255 + einfo "Installing for ${CTARGET} in ${CHOST}.."
1256 + # From this point we need to force: get stripped with the correct tools,
1257 + # get tc-arch-kernel to return the right value, etc.
1258 + export CHOST=${CTARGET}
1259 +
1260 + mymakeopts="${mymakeopts} WITHOUT_MAN= \
1261 + INCLUDEDIR=/usr/${CTARGET}/usr/include \
1262 + SHLIBDIR=/usr/${CTARGET}/usr/lib \
1263 + LIBDIR=/usr/${CTARGET}/usr/lib"
1264 +
1265 + dosym "usr/include" "/usr/${CTARGET}/sys-include"
1266 + do_install
1267 +
1268 + return 0
1269 + else
1270 + export STRIP_MASK="*/usr/lib*/*crt*.o"
1271 + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) )
1272 + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper do_install
1273 + fi
1274 +
1275 + cd "${WORKDIR}/etc/"
1276 + insinto /etc
1277 + doins nls.alias mac.conf netconfig
1278 +
1279 + # Install ttys file
1280 + local MACHINE="$(tc-arch-kernel)"
1281 + doins "etc.${MACHINE}"/*
1282 +}
1283 +
1284 +install_includes()
1285 +{
1286 + local INCLUDEDIR="$1"
1287 +
1288 + # The idea is to be called from either install or unpack.
1289 + # During unpack it's required to install them as portage's user.
1290 + if [[ "${EBUILD_PHASE}" == "install" ]]; then
1291 + local DESTDIR="${D}"
1292 + BINOWN="root"
1293 + BINGRP="wheel"
1294 + else
1295 + local DESTDIR="${WORKDIR}"
1296 + [[ -z "${USER}" ]] && USER="portage"
1297 + BINOWN="${USER}"
1298 + [[ -z "${GROUPS}" ]] && GROUPS="portage"
1299 + BINGRP="${GROUPS}"
1300 + fi
1301 +
1302 + # Must exist before we use it.
1303 + [[ -d "${DESTDIR}${INCLUDEDIR}" ]] || die "dodir or mkdir ${INCLUDEDIR} before using install_includes."
1304 + cd "${WORKDIR}/include"
1305 +
1306 + local MACHINE="$(tc-arch-kernel)"
1307 +
1308 + einfo "Installing includes into ${INCLUDEDIR} as ${BINOWN}:${BINGRP}..."
1309 + $(freebsd_get_bmake) installincludes \
1310 + MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE} \
1311 + DESTDIR="${DESTDIR}" \
1312 + INCLUDEDIR="${INCLUDEDIR}" BINOWN="${BINOWN}" \
1313 + BINGRP="${BINGRP}" \
1314 + WITHOUT_GSSAPI= \
1315 + SRCTOP="${WORKDIR}"|| die "install_includes() failed"
1316 + einfo "includes installed ok."
1317 + EXTRA_INCLUDES="lib/librtld_db lib/libutil lib/msun gnu/lib/libregex lib/libcasper lib/libmp"
1318 + for i in $EXTRA_INCLUDES; do
1319 + einfo "Installing $i includes into ${INCLUDEDIR} as ${BINOWN}:${BINGRP}..."
1320 + cd "${WORKDIR}/$i" || die
1321 + $(freebsd_get_bmake) installincludes DESTDIR="${DESTDIR}" \
1322 + MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE} \
1323 + INCLUDEDIR="${INCLUDEDIR}" BINOWN="${BINOWN}" \
1324 + BINGRP="${BINGRP}" \
1325 + SRCTOP="${WORKDIR}" || die "problem installing $i includes."
1326 + einfo "$i includes installed ok."
1327 + done
1328 +}
1329
1330 diff --git a/sys-freebsd/freebsd-libexec/Manifest b/sys-freebsd/freebsd-libexec/Manifest
1331 index 6291728..18e2999 100644
1332 --- a/sys-freebsd/freebsd-libexec/Manifest
1333 +++ b/sys-freebsd/freebsd-libexec/Manifest
1334 @@ -9,6 +9,7 @@ DIST freebsd-lib-9.1.tar.bz2 3206685 SHA256 f31fa8107b4de711c548f6d0c1bb1f81d09f
1335 DIST freebsd-libexec-8.2.tar.bz2 289147 SHA256 10b996d1d8cd044ee2e7a877e5e6ad2bf050cce9b3bd402a5e0dea7d290b595d SHA512 abe6cf5a268675d7dcb1c214c46fef47a3fb09b31947f5d8a0b938d352295efe0249beb5007649c52187bf4c221b6ebf074d18dfe9bafd168cae09ee02ab608d WHIRLPOOL 27e854fe465eb933dd8e27c5a09b063e4d3798b54e0914c79a9120dcdc34cc5d525a0c92da7b645ff7ab2ab4f34c7f7b2783012dfa5004407acd11150062b7ad
1336 DIST freebsd-libexec-9.1.tar.bz2 304592 SHA256 71e6e9e41328c2148c54b81ad9b59f912a1d5f0d52e17ac07f223aa7a94b82be SHA512 7baa4160dda2610250dd52f445e24478e0f1ea10bce21fcd0e5d1b856f399b896adc334114de0c7f61a5637e4349bb1688fdbe5c72798d8568ae791114710b92 WHIRLPOOL d800f477ac5c9ad6dae3e0091c83e107609b5a1e3aa79e9533fcd10a8dd34ff7733ab9523eae7c292310fe94f6a529209cae6b9e8bac6b47244e59834593e74b
1337 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
1338 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
1339 DIST freebsd-ubin-8.2.tar.bz2 1808012 SHA256 6b99554f3ad6ee052069b347eb6e6219b71598d7b222acb90a24cbfc805c7b68 SHA512 48d0103323e820c431aa4f62d3be40cb3b200fb62e3de01f36c88760395bf2ba3367c51f3fa72da4dbccc2812176a051a12ca5cb7e84125c3e0fc78d4cab2c29 WHIRLPOOL ea8f3a29a37b42c2b5bcc0f2c343fa1538522157ef075363c94606a4620a590e9a03f856ce2494e3e727935b62431991d0aa9fde71de699e78b4fe225bdf1c2c
1340 DIST freebsd-ubin-9.1.tar.bz2 1910472 SHA256 ff6e586f213534b6ec2e65002c0dee64063d76ddad515c12221b1a80a1815e48 SHA512 74ae0aceec8597aa66c3f1ab313f0685a3c63d7273c36ae7baf8794275ad9bca241c60c3f6281cccf6d531d250d7611099977d3b1a27279cef3586401b6af05e WHIRLPOOL c85a3c9cf2bceff2c60ff03556bcc81d3aca22b0bce3c9538990071ac0a907236eee5ae7743ad22c5fd309b047ebf392aaaf2fe177ef5790ea869aff3da7e2fe
1341 DIST freebsd-usbin-8.2.tar.bz2 2443024 SHA256 aa7cabf10f5c3a9daabea32e4de24d04ec312247842981476da666eff5054603 SHA512 bcb8ff3df54848b9107bbb52e5ced7a91e24bb181f06769b6997221729b8064ec17652eaf7500de3268cbcb63ff5760beb54d15fc78c27b02687b5b1067c74a6 WHIRLPOOL 20f5278e2a1dd387a75b44f10507958d6c0e84a2faa1bddbf808c14ab86d8dd14a956192911bbc1880f5f5f7bd05972dcbb4aec85d241f0dcf91bf4246883f0a
1342
1343 diff --git a/sys-freebsd/freebsd-libexec/freebsd-libexec-11.0.ebuild b/sys-freebsd/freebsd-libexec/freebsd-libexec-11.0.ebuild
1344 new file mode 100644
1345 index 00000000..8aea14d
1346 --- /dev/null
1347 +++ b/sys-freebsd/freebsd-libexec/freebsd-libexec-11.0.ebuild
1348 @@ -0,0 +1,131 @@
1349 +# Copyright 1999-2016 Gentoo Foundation
1350 +# Distributed under the terms of the GNU General Public License v2
1351 +# $Id$
1352 +
1353 +EAPI=5
1354 +
1355 +inherit bsdmk freebsd pam multilib multibuild multilib-build toolchain-funcs
1356 +
1357 +DESCRIPTION="FreeBSD libexec things"
1358 +SLOT="0"
1359 +
1360 +if [[ ${PV} != *9999* ]]; then
1361 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
1362 +fi
1363 +
1364 +EXTRACTONLY="
1365 + libexec/
1366 + usr.bin/
1367 + bin/
1368 + contrib/blacklist/
1369 + contrib/dma/
1370 + contrib/hyperv/
1371 + contrib/telnet/
1372 + lib/
1373 + etc/
1374 + usr.sbin/
1375 +"
1376 +
1377 +RDEPEND="=sys-freebsd/freebsd-lib-${RV}*
1378 + >=sys-freebsd/freebsd-lib-9.1-r11[${MULTILIB_USEDEP}]
1379 + pam? ( virtual/pam )"
1380 +DEPEND="${RDEPEND}
1381 + =sys-freebsd/freebsd-mk-defs-${RV}*
1382 + =sys-freebsd/freebsd-sources-${RV}*"
1383 +RDEPEND="${RDEPEND}
1384 + xinetd? ( sys-apps/xinetd )"
1385 +
1386 +S="${WORKDIR}/libexec"
1387 +
1388 +# Remove sendmail, tcp_wrapper and other useless stuff
1389 +REMOVE_SUBDIRS="smrsh mail.local tcpd telnetd rshd rlogind ftpd"
1390 +
1391 +IUSE="pam ssl kerberos ipv6 nis xinetd"
1392 +
1393 +PATCHES=( "${FILESDIR}/${PN}-10.2-atf-check.patch" )
1394 +
1395 +pkg_setup() {
1396 + use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6= WITHOUT_INET6_SUPPORT= "
1397 + use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS_SUPPORT= "
1398 + use nis || mymakeopts="${mymakeopts} WITHOUT_NIS= "
1399 + use pam || mymakeopts="${mymakeopts} WITHOUT_PAM_SUPPORT= "
1400 + use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= "
1401 +
1402 + mymakeopts="${mymakeopts} WITHOUT_SENDMAIL= WITHOUT_PF= WITHOUT_RCMDS= "
1403 +
1404 + if has_version "<sys-freebsd/freebsd-libexec-11.0"; then
1405 + REMOVE_SUBDIRS="${REMOVE_SUBDIRS} rpc.rstatd ulog-helper"
1406 + fi
1407 +
1408 + if has_version "<sys-freebsd/freebsd-ubin-11.0"; then
1409 + mymakeopts="${mymakeopts} WITHOUT_MAN_UTILS= "
1410 + fi
1411 +
1412 + if has_version "<sys-freebsd/freebsd-share-${RV}"; then
1413 + die ">=sys-freebsd/freebsd-share-${RV} is required."
1414 + fi
1415 +}
1416 +
1417 +src_prepare() {
1418 + # gcc-5.0 or later, Workaround for critical issue. bug 573358.
1419 + [[ "$(gcc-major-version)" -ge 5 ]] && replace-flags -O? -O1
1420 +
1421 + if [[ ! -e "${WORKDIR}/include" ]]; then
1422 + ln -s /usr/include "${WORKDIR}/include" || die "Symlinking /usr/include.."
1423 + fi
1424 + # allow upgrade directly from 9.x to 10.2.
1425 + if has_version "<sys-freebsd/freebsd-lib-${RV}"; then
1426 + # taken from sys/sys/elf_common.h
1427 + echo "#define DF_1_INTERPOSE 0x00000400" >> "${S}"/rtld-elf/rtld.h
1428 + echo "#define STT_GNU_IFUNC 10" >> "${S}"/rtld-elf/rtld.h
1429 + echo "#define R_386_IRELATIVE 42" >> "${S}"/rtld-elf/rtld.h
1430 + echo "#define PT_GNU_RELRO 0x6474e552" >> "${S}"/rtld-elf/rtld.h
1431 + echo "#define DF_1_NODEFLIB 0x00000800" >> "${S}"/rtld-elf/rtld.h
1432 + echo "#define NT_FREEBSD_ABI_TAG 1" >> "${S}"/rtld-elf/rtld.h
1433 + echo "#define NT_FREEBSD_NOINIT_TAG 2" >> "${S}"/rtld-elf/rtld.h
1434 + # taken from sys/sys/fcntl.h
1435 + echo "#define F_DUPFD_CLOEXEC 17" >> "${S}"/rtld-elf/rtld.h
1436 + echo "#define O_VERIFY 0x00200000" >> "${S}"/rtld-elf/rtld.h
1437 + # taken from sys/sys/cdefs.h
1438 + echo '#define __compiler_membar() __asm __volatile(" " : : : "memory")' >> "${S}"/rtld-elf/rtld.h
1439 + # taken from sys/sys/mman.h
1440 + echo '#define MAP_ALIGNED(n) ((n) << MAP_ALIGNMENT_SHIFT)' >> "${S}"/rtld-elf/rtld.h
1441 + echo '#define MAP_ALIGNMENT_SHIFT 24' >> "${S}"/rtld-elf/rtld.h
1442 + echo '#define MAP_ALIGNMENT_MASK MAP_ALIGNED(0xff)' >> "${S}"/rtld-elf/rtld.h
1443 + echo '#define MAP_ALIGNED_SUPER MAP_ALIGNED(1)' >> "${S}"/rtld-elf/rtld.h
1444 +
1445 + export mymakeopts="${mymakeopts} WITHOUT_SYMVER= WITHOUT_BLACKLIST_SUPPORT= "
1446 + fi
1447 +}
1448 +
1449 +setup_multilib_vars() {
1450 + if ! multilib_is_native_abi ; then
1451 + cd "${WORKDIR}/libexec/rtld-elf" || die
1452 + export mymakeopts="${mymakeopts} PROG=ld-elf32.so.1"
1453 + else
1454 + cd "${S}" || die
1455 + fi
1456 + "$@"
1457 +}
1458 +
1459 +src_compile() {
1460 + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) )
1461 + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper setup_multilib_vars freebsd_src_compile
1462 +}
1463 +
1464 +src_install() {
1465 + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) )
1466 + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper setup_multilib_vars freebsd_src_install
1467 +
1468 + insinto /etc
1469 + doins "${WORKDIR}/etc/gettytab"
1470 + newinitd "${FILESDIR}/bootpd.initd" bootpd
1471 + newconfd "${FILESDIR}/bootpd.confd" bootpd
1472 +
1473 + if use xinetd; then
1474 + for rpcd in rstatd rusersd walld rquotad sprayd; do
1475 + insinto /etc/xinetd.d
1476 + newins "${FILESDIR}/${rpcd}.xinetd" ${rpcd}
1477 + done
1478 + fi
1479 +}
1480
1481 diff --git a/sys-freebsd/freebsd-mk-defs/Manifest b/sys-freebsd/freebsd-mk-defs/Manifest
1482 index 58c6aa0..99925b6 100644
1483 --- a/sys-freebsd/freebsd-mk-defs/Manifest
1484 +++ b/sys-freebsd/freebsd-mk-defs/Manifest
1485 @@ -1,3 +1,4 @@
1486 DIST freebsd-share-8.2.tar.bz2 3797560 SHA256 dd082c6ddbf8e08ec91d9810d51af4111339bed912b0f74d05be283780292ba0 SHA512 b3f964253f80e58cde12f26e48a23aa75c17b9ab2810f91a4bd2d7efbe902af7c73c219f8373a4fc97ee0a35d25627b8815c79c136ef18620acc8bd0ee5bd6c4 WHIRLPOOL 42326ad6139feadf80509f5e810f6a86009ad3a69aad9550c6355389773c28d5b2f7930eaa852f8442808485d13e5b758ed3420e39048bb3966785e6953119ea
1487 DIST freebsd-share-9.1.tar.bz2 6733003 SHA256 2bbd8aa05d52b18a1780772a8518d79d375c1eeae98f52fb6aded233ac2491d7 SHA512 9665e3d5253f49a55921012bd21a8688210a1993ba6be4ad17b5ba5619104a50f3199d49a0eb83cf29db5a06c407beb15616bfe71338c680fe34ec47564c4b43 WHIRLPOOL 7d15596888ac42af1a0c125591283524ff794dccbf9f6592963602f046a45ca073b10bda43c2d0d662fd3414753de64c05293788e03c4eea67de55d9bc083c11
1488 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
1489 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
1490
1491 diff --git a/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-drop-unsupport-cflags.patch b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-drop-unsupport-cflags.patch
1492 new file mode 100644
1493 index 00000000..d12bbbe
1494 --- /dev/null
1495 +++ b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-drop-unsupport-cflags.patch
1496 @@ -0,0 +1,13 @@
1497 +diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk
1498 +index 37c4d01..e840a25 100644
1499 +--- a/share/mk/bsd.sys.mk
1500 ++++ b/share/mk/bsd.sys.mk
1501 +@@ -112,7 +112,7 @@ CWARNFLAGS+= -Wno-error=unused-function -Wno-error=enum-compare -Wno-error=logic
1502 + .if ${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30600
1503 + FORMAT_EXTENSIONS= -D__printf__=__freebsd_kprintf__
1504 + .else
1505 +-FORMAT_EXTENSIONS= -fformat-extensions
1506 ++FORMAT_EXTENSIONS=
1507 + .endif
1508 +
1509 + .if defined(IGNORE_PRAGMA)
1510
1511 diff --git a/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-gentoo.patch b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-gentoo.patch
1512 new file mode 100644
1513 index 00000000..e87bdba
1514 --- /dev/null
1515 +++ b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-gentoo.patch
1516 @@ -0,0 +1,343 @@
1517 +diff --git a/share/mk/bsd.doc.mk b/share/mk/bsd.doc.mk
1518 +index 9f4ea2c..0f666bf 100644
1519 +--- a/share/mk/bsd.doc.mk
1520 ++++ b/share/mk/bsd.doc.mk
1521 +@@ -144,10 +144,12 @@ CLEANFILES+= ${DOC}.ascii ${DOC}.ascii${DCOMPRESS_EXT} \
1522 + realinstall:
1523 + .if ${PRINTERDEVICE:Mhtml}
1524 + cd ${SRCDIR}; \
1525 ++ ${INSTALL} -d ${DESTDIR}${BINDIR}/${VOLUME}; \
1526 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},docs} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
1527 + ${DOC}*.html ${DESTDIR}${BINDIR}/${VOLUME}/
1528 + .endif
1529 + .for _dev in ${PRINTERDEVICE:Nhtml}
1530 ++ ${INSTALL} -d ${DESTDIR}${BINDIR}/${VOLUME}; \
1531 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},docs} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
1532 + ${DFILE.${_dev}} ${DESTDIR}${BINDIR}/${VOLUME}/
1533 + .endfor
1534 +diff --git a/share/mk/bsd.files.mk b/share/mk/bsd.files.mk
1535 +index bc123e1..4707b84 100644
1536 +--- a/share/mk/bsd.files.mk
1537 ++++ b/share/mk/bsd.files.mk
1538 +@@ -63,6 +63,7 @@ stage_as.${file:T}: ${file}
1539 +
1540 + installfiles-${group}: _${group}INS_${file:T}
1541 + _${group}INS_${file:T}: ${file}
1542 ++ ${INSTALL} -d ${DESTDIR}${${group}DIR_${.ALLSRC:T}}
1543 + ${INSTALL} ${${group}TAG_ARGS} -o ${${group}OWN_${.ALLSRC:T}} \
1544 + -g ${${group}GRP_${.ALLSRC:T}} -m ${${group}MODE_${.ALLSRC:T}} \
1545 + ${.ALLSRC} \
1546 +@@ -77,10 +78,12 @@ stage_files.${group}: ${_${group}FILES}
1547 + installfiles-${group}: _${group}INS
1548 + _${group}INS: ${_${group}FILES}
1549 + .if defined(${group}NAME)
1550 ++ ${INSTALL} -d ${DESTDIR}${${group}DIR}/${${group}NAME}
1551 + ${INSTALL} ${${group}TAG_ARGS} -o ${${group}OWN} -g ${${group}GRP} \
1552 + -m ${${group}MODE} ${.ALLSRC} \
1553 + ${DESTDIR}${${group}DIR}/${${group}NAME}
1554 + .else
1555 ++ ${INSTALL} -d ${DESTDIR}${${group}DIR}
1556 + ${INSTALL} ${${group}TAG_ARGS} -o ${${group}OWN} -g ${${group}GRP} \
1557 + -m ${${group}MODE} ${.ALLSRC} ${DESTDIR}${${group}DIR}/
1558 + .endif
1559 +diff --git a/share/mk/bsd.incs.mk b/share/mk/bsd.incs.mk
1560 +index 9636e8c..fc2751a 100644
1561 +--- a/share/mk/bsd.incs.mk
1562 ++++ b/share/mk/bsd.incs.mk
1563 +@@ -62,6 +62,9 @@ stage_includes: stage_as.${header:T}
1564 +
1565 + installincludes: _${group}INS_${header:T}
1566 + _${group}INS_${header:T}: ${header}
1567 ++ ${INSTALL} -d -o ${${group}OWN_${.ALLSRC:T}} \
1568 ++ -g ${${group}GRP_${.ALLSRC:T}} \
1569 ++ ${DESTDIR}${${group}DIR_${.ALLSRC:T}}
1570 + ${INSTALL} -C -o ${${group}OWN_${.ALLSRC:T}} \
1571 + -g ${${group}GRP_${.ALLSRC:T}} -m ${${group}MODE_${.ALLSRC:T}} \
1572 + ${.ALLSRC} \
1573 +@@ -77,9 +80,13 @@ stage_includes: stage_files.${group}
1574 + installincludes: _${group}INS
1575 + _${group}INS: ${_${group}INCS}
1576 + .if defined(${group}NAME)
1577 ++ ${INSTALL} -d -o ${${group}OWN} -g ${${group}GRP} \
1578 ++ ${DESTDIR}${${group}DIR}
1579 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},development} -C -o ${${group}OWN} -g ${${group}GRP} -m ${${group}MODE} \
1580 + ${.ALLSRC} ${DESTDIR}${${group}DIR}/${${group}NAME}
1581 + .else
1582 ++ ${INSTALL} -d -o ${${group}OWN} -g ${${group}GRP} \
1583 ++ ${DESTDIR}${${group}DIR}
1584 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},development} -C -o ${${group}OWN} -g ${${group}GRP} -m ${${group}MODE} \
1585 + ${.ALLSRC} ${DESTDIR}${${group}DIR}/
1586 + .endif
1587 +diff --git a/share/mk/bsd.info.mk b/share/mk/bsd.info.mk
1588 +index 0544662..1a7aad7 100644
1589 +--- a/share/mk/bsd.info.mk
1590 ++++ b/share/mk/bsd.info.mk
1591 +@@ -83,6 +83,7 @@ INFO2HTML?= info2html
1592 + TEX?= tex
1593 + DVIPS?= dvips
1594 + DVIPS2ASCII?= dvips2ascii
1595 ++INSTALL?= install
1596 +
1597 + .SUFFIXES: ${ICOMPRESS_EXT} .info .texi .texinfo .dvi .ps .latin1 .html
1598 +
1599 +@@ -141,15 +142,17 @@ ${x:S/$/${ICOMPRESS_EXT}/}: ${x}
1600 + INSTALLINFODIRS+= ${x:S/$/-install/}
1601 + ${x:S/$/-install/}:
1602 + .if !empty(.MAKEFLAGS:M-j)
1603 ++ ${INSTALL} -d ${DESTDIR}${INFODIR}
1604 + lockf -k ${DESTDIR}${INFODIR}/${INFODIRFILE} \
1605 + ${INSTALLINFO} ${INSTALLINFOFLAGS} \
1606 +- --defsection=${INFOSECTION} \
1607 +- --defentry=${INFOENTRY_${x}} \
1608 ++ --section=${INFOSECTION} \
1609 ++ --entry=${INFOENTRY_${x}} \
1610 + ${x}.info ${DESTDIR}${INFODIR}/${INFODIRFILE}
1611 + .else
1612 ++ ${INSTALL} -d ${DESTDIR}${INFODIR}
1613 + ${INSTALLINFO} ${INSTALLINFOFLAGS} \
1614 +- --defsection=${INFOSECTION} \
1615 +- --defentry=${INFOENTRY_${x}} \
1616 ++ --section=${INFOSECTION} \
1617 ++ --entry=${INFOENTRY_${x}} \
1618 + ${x}.info ${DESTDIR}${INFODIR}/${INFODIRFILE}
1619 + .endif
1620 + .endfor
1621 +diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk
1622 +index bd93e57..92df111 100644
1623 +--- a/share/mk/bsd.lib.mk
1624 ++++ b/share/mk/bsd.lib.mk
1625 +@@ -52,8 +52,6 @@ CFLAGS+= ${DEBUG_FLAGS}
1626 + .if ${MK_CTF} != "no" && ${DEBUG_FLAGS:M-g} != ""
1627 + CTFFLAGS+= -g
1628 + .endif
1629 +-.else
1630 +-STRIP?= -s
1631 + .endif
1632 +
1633 + .if ${SHLIBDIR:M*lib32*}
1634 +@@ -335,14 +333,17 @@ realinstall: _libinstall
1635 + .ORDER: beforeinstall _libinstall
1636 + _libinstall:
1637 + .if defined(LIB) && !empty(LIB) && ${MK_INSTALLLIB} != "no"
1638 ++ ${INSTALL} -d ${DESTDIR}${_LIBDIR}
1639 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},development} -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
1640 + ${_INSTALLFLAGS} lib${LIB_PRIVATE}${LIB}.a ${DESTDIR}${_LIBDIR}/
1641 + .endif
1642 + .if ${MK_PROFILE} != "no" && defined(LIB) && !empty(LIB)
1643 ++ ${INSTALL} -d ${DESTDIR}${_LIBDIR}
1644 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},profile} -C -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
1645 + ${_INSTALLFLAGS} lib${LIB_PRIVATE}${LIB}_p.a ${DESTDIR}${_LIBDIR}/
1646 + .endif
1647 + .if defined(SHLIB_NAME)
1648 ++ ${INSTALL} -d ${DESTDIR}${_SHLIBDIR}
1649 + ${INSTALL} ${TAG_ARGS} ${STRIP} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
1650 + ${_INSTALLFLAGS} ${_SHLINSTALLFLAGS} \
1651 + ${SHLIB_NAME} ${DESTDIR}${_SHLIBDIR}/
1652 +@@ -387,10 +388,12 @@ _libinstall:
1653 + .endif # SHLIB_LINK
1654 + .endif # SHIB_NAME
1655 + .if defined(INSTALL_PIC_ARCHIVE) && defined(LIB) && !empty(LIB) && ${MK_TOOLCHAIN} != "no"
1656 ++ ${INSTALL} -d ${DESTDIR}${_LIBDIR}
1657 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},development} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
1658 + ${_INSTALLFLAGS} lib${LIB}_pic.a ${DESTDIR}${_LIBDIR}/
1659 + .endif
1660 + .if defined(WANT_LINT) && !defined(NO_LINT) && defined(LIB) && !empty(LIB)
1661 ++ ${INSTALL} -d ${DESTDIR}${LINTLIBDIR}
1662 + ${INSTALL} ${TAG_ARGS:D${TAG_ARGS},development} -o ${LIBOWN} -g ${LIBGRP} -m ${LIBMODE} \
1663 + ${_INSTALLFLAGS} ${LINTLIB} ${DESTDIR}${LINTLIBDIR}/
1664 + .endif
1665 +diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk
1666 +index 0844ae2..caec715 100644
1667 +--- a/share/mk/bsd.libnames.mk
1668 ++++ b/share/mk/bsd.libnames.mk
1669 +@@ -63,7 +63,7 @@ LIBELF?= ${DESTDIR}${LIBDIR}/libelf.a
1670 + LIBEXECINFO?= ${DESTDIR}${LIBDIR}/libexecinfo.a
1671 + LIBFETCH?= ${DESTDIR}${LIBDIR}/libfetch.a
1672 + LIBFIGPAR?= ${DESTDIR}${LIBDIR}/libfigpar.a
1673 +-LIBFL?= "don't use LIBFL, use LIBL"
1674 ++LIBFL?= ${DESTDIR}${LIBDIR}/libfl.a
1675 + LIBFORM?= ${DESTDIR}${LIBDIR}/libform.a
1676 + LIBG2C?= ${DESTDIR}${LIBDIR}/libg2c.a
1677 + LIBGEOM?= ${DESTDIR}${LIBDIR}/libgeom.a
1678 +@@ -92,7 +92,7 @@ LIBKEYCAP?= ${DESTDIR}${LIBDIR}/libkeycap.a
1679 + LIBKICONV?= ${DESTDIR}${LIBDIR}/libkiconv.a
1680 + LIBKRB5?= ${DESTDIR}${LIBDIR}/libkrb5.a
1681 + LIBKVM?= ${DESTDIR}${LIBDIR}/libkvm.a
1682 +-LIBL?= ${DESTDIR}${LIBDIR}/libl.a
1683 ++LIBL?= ${DESTDIR}${LIBDIR}/libfl.a
1684 + LIBLN?= "don't use LIBLN, use LIBL"
1685 + LIBLZMA?= ${DESTDIR}${LIBDIR}/liblzma.a
1686 + LIBM?= ${DESTDIR}${LIBDIR}/libm.a
1687 +diff --git a/share/mk/bsd.links.mk b/share/mk/bsd.links.mk
1688 +index 0c7d063..f5d1779 100644
1689 +--- a/share/mk/bsd.links.mk
1690 ++++ b/share/mk/bsd.links.mk
1691 +@@ -16,9 +16,11 @@ afterinstall: _installlinks
1692 + _installlinks:
1693 + .for s t in ${LINKS}
1694 + @${ECHO} "${t} -> ${s}" ;\
1695 ++ test -d ${DESTDIR}/`dirname ${t}` || mkdir ${DESTDIR}/`dirname ${t}`;\
1696 + ${INSTALL_LINK} ${TAG_ARGS} ${DESTDIR}${s} ${DESTDIR}${t}
1697 + .endfor
1698 + .for s t in ${SYMLINKS}
1699 + @${ECHO} "${t} -> ${s}" ;\
1700 ++ test -d ${DESTDIR}/`dirname ${t}` || mkdir ${DESTDIR}/`dirname ${t}`;\
1701 + ${INSTALL_SYMLINK} ${TAG_ARGS} ${s} ${DESTDIR}/${t}
1702 + .endfor
1703 +diff --git a/share/mk/bsd.man.mk b/share/mk/bsd.man.mk
1704 +index 6f78501..bc9a1a6 100644
1705 +--- a/share/mk/bsd.man.mk
1706 ++++ b/share/mk/bsd.man.mk
1707 +@@ -188,9 +188,11 @@ maninstall: ${MAN}
1708 + .if ${MK_MANCOMPRESS} == "no"
1709 + .if defined(MANFILTER)
1710 + .for __page in ${MAN}
1711 ++ ${INSTALL} -d ${DESTDIR}${MANDIR}${__page:E}${MANSUBDIR}/${__page}
1712 + ${MINSTALL} ${__page:T:S/$/${FILTEXTENSION}/g} \
1713 + ${DESTDIR}${MANDIR}${__page:E}${MANSUBDIR}/${__page}
1714 + .if defined(MANBUILDCAT) && !empty(MANBUILDCAT)
1715 ++ ${INSTALL} -d ${DESTDIR}${CATDIR}${__page:E}${MANSUBDIR}/${__page}
1716 + ${MINSTALL} ${__page:T:S/$/${CATEXT}${FILTEXTENSION}/g} \
1717 + ${DESTDIR}${CATDIR}${__page:E}${MANSUBDIR}/${__page}
1718 + .endif
1719 +@@ -204,11 +206,14 @@ maninstall: ${MAN}
1720 + esac; \
1721 + page=$$1; shift; sect=$$1; shift; \
1722 + d=${DESTDIR}${MANDIR}$${sect}${MANSUBDIR}; \
1723 ++ ${ECHO} ${INSTALL} -d $${d}; \
1724 ++ ${INSTALL} -d $${d}; \
1725 + ${ECHO} ${MINSTALL} $${page} $${d}; \
1726 + ${MINSTALL} $${page} $${d}; \
1727 + done
1728 + .if defined(MANBUILDCAT) && !empty(MANBUILDCAT)
1729 + .for __page in ${MAN}
1730 ++ ${INSTALL} -d ${DESTDIR}${CATDIR}${__page:E}${MANSUBDIR}/${__page:T}
1731 + ${MINSTALL} ${__page:T:S/$/${CATEXT}/} \
1732 + ${DESTDIR}${CATDIR}${__page:E}${MANSUBDIR}/${__page:T}
1733 + .endfor
1734 +@@ -216,9 +221,11 @@ maninstall: ${MAN}
1735 + .endif # defined(MANFILTER)
1736 + .else # ${MK_MANCOMPRESS} == "yes"
1737 + .for __page in ${MAN}
1738 ++ ${INSTALL} -d ${DESTDIR}${MANDIR}${__page:E}${MANSUBDIR}
1739 + ${MINSTALL} ${__page:T:S/$/${MCOMPRESS_EXT}/g} \
1740 + ${DESTDIR}${MANDIR}${__page:E}${MANSUBDIR}/
1741 + .if defined(MANBUILDCAT) && !empty(MANBUILDCAT)
1742 ++ ${INSTALL} -d ${DESTDIR}${CATDIR}${__page:E}${MANSUBDIR}/${__page:T:S/$/${MCOMPRESS_EXT}
1743 + ${MINSTALL} ${__page:T:S/$/${CATEXT}${MCOMPRESS_EXT}/g} \
1744 + ${DESTDIR}${CATDIR}${__page:E}${MANSUBDIR}/${__page:T:S/$/${MCOMPRESS_EXT}/}
1745 + .endif
1746 +diff --git a/share/mk/bsd.nls.mk b/share/mk/bsd.nls.mk
1747 +index 87a7347..c860c97 100644
1748 +--- a/share/mk/bsd.nls.mk
1749 ++++ b/share/mk/bsd.nls.mk
1750 +@@ -71,7 +71,8 @@ STAGE_SYMLINKS_DIR.NLS= ${STAGE_OBJTOP}
1751 + SYMLINKS+= ${NLSSYMLINKS}
1752 + .endif
1753 + .for file in ${NLS}
1754 +-NLSNAME_${file:T}= ${file:T:R}/${NLSNAME}.cat
1755 ++NLSDIR_${file:T}= ${SHAREDIR}/nls/${file:T:R}/
1756 ++NLSNAME_${file:T}= ${NLSNAME}.cat
1757 + .if defined(NLSLINKS_${file:R}) && !empty(NLSLINKS_${file:R})
1758 + .if !empty(NLSLINKS_${file:R}:M${file:R})
1759 + .error NLSLINKS_${file:R} contains itself: ${file:R}
1760 +diff --git a/share/mk/bsd.own.mk b/share/mk/bsd.own.mk
1761 +index c10e492..5984215 100644
1762 +--- a/share/mk/bsd.own.mk
1763 ++++ b/share/mk/bsd.own.mk
1764 +@@ -233,9 +233,6 @@ INSTALL_SYMLINK?= ${INSTALL} ${SYMLINK}
1765 + INSTALL_RSYMLINK?= ${INSTALL} ${RSYMLINK}
1766 +
1767 + # Common variables
1768 +-.if !defined(DEBUG_FLAGS)
1769 +-STRIP?= -s
1770 +-.endif
1771 +
1772 + COMPRESS_CMD?= gzip -cn
1773 + COMPRESS_EXT?= .gz
1774 +diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk
1775 +index f1a5c65..3b1ecf8 100644
1776 +--- a/share/mk/bsd.prog.mk
1777 ++++ b/share/mk/bsd.prog.mk
1778 +@@ -44,10 +44,6 @@ CTFFLAGS+= -g
1779 + .endif
1780 + .endif
1781 +
1782 +-.if !defined(DEBUG_FLAGS)
1783 +-STRIP?= -s
1784 +-.endif
1785 +-
1786 + .if defined(NO_ROOT)
1787 + .if !defined(TAGS) || ! ${TAGS:Mpackage=*}
1788 + TAGS+= package=${PACKAGE:Uruntime}
1789 +@@ -217,6 +213,7 @@ realinstall: _proginstall
1790 + .ORDER: beforeinstall _proginstall
1791 + _proginstall:
1792 + .if defined(PROG)
1793 ++ ${INSTALL} -d ${DESTDIR}${BINDIR}
1794 + ${INSTALL} ${TAG_ARGS} ${STRIP} -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \
1795 + ${_INSTALLFLAGS} ${PROG} ${DESTDIR}${BINDIR}/${PROGNAME}
1796 + .if ${MK_DEBUG_FILES} != "no"
1797 +@@ -255,6 +252,7 @@ SCRIPTSMODE_${script:T}?= ${SCRIPTSMODE}
1798 + STAGE_AS_${script:T}= ${SCRIPTSDIR_${script:T}}/${SCRIPTSNAME_${script:T}}
1799 + _scriptsinstall: _SCRIPTSINS_${script:T}
1800 + _SCRIPTSINS_${script:T}: ${script}
1801 ++ ${INSTALL} -d ${DESTDIR}${SCRIPTSDIR_${.ALLSRC:T}}
1802 + ${INSTALL} ${TAG_ARGS} -o ${SCRIPTSOWN_${.ALLSRC:T}} \
1803 + -g ${SCRIPTSGRP_${.ALLSRC:T}} -m ${SCRIPTSMODE_${.ALLSRC:T}} \
1804 + ${.ALLSRC} \
1805 +diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk
1806 +index 0ae45c5..37c4d01 100644
1807 +--- a/share/mk/bsd.sys.mk
1808 ++++ b/share/mk/bsd.sys.mk
1809 +@@ -29,9 +29,6 @@ CFLAGS+= -std=${CSTD}
1810 + .if defined(WARNS)
1811 + .if ${WARNS} >= 1
1812 + CWARNFLAGS+= -Wsystem-headers
1813 +-.if !defined(NO_WERROR) && !defined(NO_WERROR.${COMPILER_TYPE})
1814 +-CWARNFLAGS+= -Werror
1815 +-.endif # !NO_WERROR && !NO_WERROR.${COMPILER_TYPE}
1816 + .endif # WARNS >= 1
1817 + .if ${WARNS} >= 2
1818 + CWARNFLAGS+= -Wall -Wno-format-y2k
1819 +@@ -100,9 +97,6 @@ CWARNFLAGS+= -Wformat=2 -Wno-format-extra-args
1820 + .if ${WARNS} <= 3
1821 + CWARNFLAGS.clang+= -Wno-format-nonliteral
1822 + .endif # WARNS <= 3
1823 +-.if !defined(NO_WERROR) && !defined(NO_WERROR.${COMPILER_TYPE})
1824 +-CWARNFLAGS+= -Werror
1825 +-.endif # !NO_WERROR && !NO_WERROR.${COMPILER_TYPE}
1826 + .endif # WFORMAT > 0
1827 + .endif # WFORMAT
1828 + .if defined(NO_WFORMAT) || defined(NO_WFORMAT.${COMPILER_TYPE})
1829 +@@ -151,6 +145,13 @@ CFLAGS.clang+= -fno-dwarf2-cfi-asm
1830 + # but not yet.
1831 + CXXFLAGS.clang+= -Wno-c++11-extensions
1832 +
1833 ++.if ${MK_SSP} == "no"
1834 ++# gcc-4.9, -fstack-protector-strong is enabled by default.
1835 ++# Add -fno-stack-protector to disable it. Gentoo Bug #511698.
1836 ++SSP_CFLAGS?= -fno-stack-protector
1837 ++CFLAGS+= ${SSP_CFLAGS}
1838 ++.endif
1839 ++
1840 + .if ${MK_SSP} != "no" && \
1841 + ${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips"
1842 + .if (${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30500) || \
1843 +diff --git a/share/mk/sys.mk b/share/mk/sys.mk
1844 +index 5cfd0bb..25abf8e 100644
1845 +--- a/share/mk/sys.mk
1846 ++++ b/share/mk/sys.mk
1847 +@@ -418,12 +418,6 @@ YFLAGS ?= -d
1848 + rm -f ${.PREFIX}.tmp.c
1849 + ${CTFCONVERT_CMD}
1850 +
1851 +-# Pull in global settings.
1852 +-__MAKE_CONF?=/etc/make.conf
1853 +-.if exists(${__MAKE_CONF})
1854 +-.include "${__MAKE_CONF}"
1855 +-.endif
1856 +-
1857 + # late include for customization
1858 + .sinclude <local.sys.mk>
1859 +
1860
1861 diff --git a/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-gnu.patch b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-gnu.patch
1862 new file mode 100644
1863 index 00000000..97e882d
1864 --- /dev/null
1865 +++ b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-gnu.patch
1866 @@ -0,0 +1,63 @@
1867 +diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk
1868 +index 92df111..88c75d9 100644
1869 +--- a/share/mk/bsd.lib.mk
1870 ++++ b/share/mk/bsd.lib.mk
1871 +@@ -184,7 +184,7 @@ _LIBS= lib${LIB_PRIVATE}${LIB}.a
1872 + lib${LIB_PRIVATE}${LIB}.a: ${OBJS} ${STATICOBJS}
1873 + @${ECHO} building static ${LIB} library
1874 + @rm -f ${.TARGET}
1875 +- ${AR} ${ARFLAGS} ${.TARGET} `NM='${NM}' NMFLAGS='${NMFLAGS}' lorder ${OBJS} ${STATICOBJS} | tsort -q` ${ARADD}
1876 ++ ${AR} ${ARFLAGS} ${.TARGET} ${OBJS} ${STATICOBJS} ${ARADD}
1877 + ${RANLIB} ${RANLIBFLAGS} ${.TARGET}
1878 + .endif
1879 +
1880 +@@ -199,7 +199,7 @@ CLEANFILES+= ${POBJS}
1881 + lib${LIB_PRIVATE}${LIB}_p.a: ${POBJS}
1882 + @${ECHO} building profiled ${LIB} library
1883 + @rm -f ${.TARGET}
1884 +- ${AR} ${ARFLAGS} ${.TARGET} `NM='${NM}' NMFLAGS='${NMFLAGS}' lorder ${POBJS} | tsort -q` ${ARADD}
1885 ++ ${AR} ${ARFLAGS} ${.TARGET} {POBJS} ${ARADD}
1886 + ${RANLIB} ${RANLIBFLAGS} ${.TARGET}
1887 + .endif
1888 +
1889 +@@ -247,7 +247,7 @@ ${SHLIB_NAME_FULL}: ${SOBJS}
1890 + .endif
1891 + ${_LD:N${CCACHE_BIN}} ${LDFLAGS} ${SSP_CFLAGS} ${SOLINKOPTS} \
1892 + -o ${.TARGET} -Wl,-soname,${SONAME} \
1893 +- `NM='${NM}' NMFLAGS='${NMFLAGS}' lorder ${SOBJS} | tsort -q` ${LDADD}
1894 ++ `echo ${SOBJS} | xargs -n 1 echo | sort -u` ${LDADD}
1895 + .if ${MK_CTF} != "no"
1896 + ${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${SOBJS}
1897 + .endif
1898 +@@ -312,13 +312,6 @@ _EXTRADEPEND:
1899 +
1900 + .if !target(install)
1901 +
1902 +-.if defined(PRECIOUSLIB)
1903 +-.if !defined(NO_FSCHG)
1904 +-SHLINSTALLFLAGS+= -fschg
1905 +-.endif
1906 +-SHLINSTALLFLAGS+= -S
1907 +-.endif
1908 +-
1909 + _INSTALLFLAGS:= ${INSTALLFLAGS}
1910 + .for ie in ${INSTALLFLAGS_EDIT}
1911 + _INSTALLFLAGS:= ${_INSTALLFLAGS${ie}}
1912 +diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk
1913 +index 3b1ecf8..26ac9c5 100644
1914 +--- a/share/mk/bsd.prog.mk
1915 ++++ b/share/mk/bsd.prog.mk
1916 +@@ -196,13 +196,6 @@ _EXTRADEPEND:
1917 +
1918 + .if !target(install)
1919 +
1920 +-.if defined(PRECIOUSPROG)
1921 +-.if !defined(NO_FSCHG)
1922 +-INSTALLFLAGS+= -fschg
1923 +-.endif
1924 +-INSTALLFLAGS+= -S
1925 +-.endif
1926 +-
1927 + _INSTALLFLAGS:= ${INSTALLFLAGS}
1928 + .for ie in ${INSTALLFLAGS_EDIT}
1929 + _INSTALLFLAGS:= ${_INSTALLFLAGS${ie}}
1930
1931 diff --git a/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-libproc-libcxx.patch b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-libproc-libcxx.patch
1932 new file mode 100644
1933 index 00000000..5da025d
1934 --- /dev/null
1935 +++ b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-libproc-libcxx.patch
1936 @@ -0,0 +1,13 @@
1937 +diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk
1938 +index 14489a8..c993f7c 100644
1939 +--- a/share/mk/src.libnames.mk
1940 ++++ b/share/mk/src.libnames.mk
1941 +@@ -245,7 +245,7 @@ _DP_radius= crypto
1942 + .endif
1943 + _DP_procstat= kvm util elf
1944 + .if ${MK_CXX} == "yes"
1945 +-.if ${MK_LIBCPLUSPLUS} != "no"
1946 ++.if ${COMPILER_TYPE} == "clang"
1947 + _DP_proc= cxxrt
1948 + .else
1949 + _DP_proc= supcplusplus
1950
1951 diff --git a/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-rename-libs.patch b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-rename-libs.patch
1952 new file mode 100644
1953 index 00000000..fd72f1f
1954 --- /dev/null
1955 +++ b/sys-freebsd/freebsd-mk-defs/files/freebsd-mk-defs-11.0-rename-libs.patch
1956 @@ -0,0 +1,16 @@
1957 +diff --git a/share/mk/src.libnames.mk b/share/mk/src.libnames.mk
1958 +index 249ac52..14489a8 100644
1959 +--- a/share/mk/src.libnames.mk
1960 ++++ b/share/mk/src.libnames.mk
1961 +@@ -343,6 +343,11 @@ LIBATF_CXX= ${DESTDIR}${LIBDIR}/libprivateatf-c++.a
1962 + LDADD_atf_c= -lprivateatf-c
1963 + LDADD_atf_cxx= -lprivateatf-c++
1964 +
1965 ++LDADD_bsdxml= -lexpat
1966 ++LDADD_l= -lfl
1967 ++LDADD_termcap= -lncurses
1968 ++LDADD_termcapw= -lncursesw
1969 ++
1970 + .for _l in ${_PRIVATELIBS}
1971 + LIB${_l:tu}?= ${DESTDIR}${LIBDIR}/libprivate${_l}.a
1972 + .endfor
1973
1974 diff --git a/sys-freebsd/freebsd-mk-defs/freebsd-mk-defs-11.0.ebuild b/sys-freebsd/freebsd-mk-defs/freebsd-mk-defs-11.0.ebuild
1975 new file mode 100644
1976 index 00000000..e1eb27a
1977 --- /dev/null
1978 +++ b/sys-freebsd/freebsd-mk-defs/freebsd-mk-defs-11.0.ebuild
1979 @@ -0,0 +1,55 @@
1980 +# Copyright 1999-2016 Gentoo Foundation
1981 +# Distributed under the terms of the GNU General Public License v2
1982 +# $Id$
1983 +
1984 +EAPI=5
1985 +
1986 +inherit bsdmk freebsd
1987 +
1988 +DESCRIPTION="Makefiles definitions used for building and installing libraries and system files"
1989 +SLOT="0"
1990 +
1991 +IUSE="userland_GNU"
1992 +
1993 +if [[ ${PV} != *9999* ]]; then
1994 + KEYWORDS="~amd64 ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
1995 +fi
1996 +
1997 +EXTRACTONLY="share/"
1998 +
1999 +RDEPEND=""
2000 +DEPEND=""
2001 +
2002 +RESTRICT="strip"
2003 +
2004 +S="${WORKDIR}/share/mk"
2005 +
2006 +src_prepare() {
2007 + local installdir
2008 +
2009 + epatch "${FILESDIR}/${PN}-11.0-gentoo.patch"
2010 + epatch "${FILESDIR}/${PN}-11.0-rename-libs.patch"
2011 + epatch "${FILESDIR}/${PN}-11.0-libproc-libcxx.patch"
2012 + epatch "${FILESDIR}/${PN}-11.0-drop-unsupport-cflags.patch"
2013 + use userland_GNU && epatch "${FILESDIR}/${PN}-11.0-gnu.patch"
2014 +
2015 + if [[ ${CHOST} != *-freebsd* ]]; then
2016 + installdir="/usr/share/mk/freebsd"
2017 + else
2018 + installdir="/usr/share/mk"
2019 + fi
2020 +
2021 + sed -i -e "s:FILESDIR=.*:FILESDIR= ${installdir}:" "${S}"/Makefile || die
2022 +}
2023 +
2024 +src_compile() { :; }
2025 +
2026 +src_install() {
2027 + freebsd_src_install
2028 + if [[ ${CHOST} != *-freebsd* ]]; then
2029 + insinto /usr/share/mk/freebsd/system
2030 + else
2031 + insinto /usr/share/mk/system
2032 + fi
2033 + doins *.mk *.awk
2034 +}
2035
2036 diff --git a/sys-freebsd/freebsd-pam-modules/Manifest b/sys-freebsd/freebsd-pam-modules/Manifest
2037 index 2b08f19..e9b8f7f 100644
2038 --- a/sys-freebsd/freebsd-pam-modules/Manifest
2039 +++ b/sys-freebsd/freebsd-pam-modules/Manifest
2040 @@ -1,3 +1,4 @@
2041 DIST freebsd-lib-8.2.tar.bz2 3323878 SHA256 e3590c12794fcb5ba8eb7a1f58b497587cf19f9200b3254c194a793da3b5bfb0 SHA512 c059cfdd1099bb519b2a5c43fb7e7104c500ef8906229ed7eb9e420cb3a217cdaf8655e9e7a9f45cfadc5491f8115e0e738fd49251d9f0c3a83780845b09f007 WHIRLPOOL 95f98a372f44a89bc8ac3029ec065dbbfec338e6f889d057d75644bfcdfb9d27fdc0421d7e392cad5a823712b97f0857297ec3d321580254c63032c22b95792e
2042 DIST freebsd-lib-9.1.tar.bz2 3206685 SHA256 f31fa8107b4de711c548f6d0c1bb1f81d09f51bcc3b14a1e9e90bb0e7cc4a35d SHA512 40d0c36b6b889c404fa0e0afa38ba4e84a55bc88ffa2f98a70afbd7a32c4f32c158617ba770567d082a986d62c09b3ec8db3dc5ab853ee1c9bbe0b90bb82396e WHIRLPOOL 581878bf9c43184b043b4293409b85901c9ed1f9bd279e965414aca41ba50950848ebda3ee10a503a028135dfd2765e95a11acd4e62a11c528e104392bbbd8d0
2043 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
2044 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
2045
2046 diff --git a/sys-freebsd/freebsd-pam-modules/freebsd-pam-modules-11.0.ebuild b/sys-freebsd/freebsd-pam-modules/freebsd-pam-modules-11.0.ebuild
2047 new file mode 100644
2048 index 00000000..0172c4e
2049 --- /dev/null
2050 +++ b/sys-freebsd/freebsd-pam-modules/freebsd-pam-modules-11.0.ebuild
2051 @@ -0,0 +1,46 @@
2052 +# Copyright 1999-2016 Gentoo Foundation
2053 +# Distributed under the terms of the GNU General Public License v2
2054 +# $Id$
2055 +
2056 +EAPI=5
2057 +
2058 +inherit bsdmk freebsd multilib pam
2059 +
2060 +DESCRIPTION="FreeBSD's PAM authentication modules"
2061 +SLOT="0"
2062 +
2063 +IUSE="kerberos nis"
2064 +
2065 +if [[ ${PV} != *9999* ]]; then
2066 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
2067 +fi
2068 +
2069 +EXTRACTONLY="lib/"
2070 +
2071 +RDEPEND=">=sys-auth/openpam-20050201-r1
2072 + kerberos? ( dev-libs/openssl:0=
2073 + virtual/krb5 )"
2074 +DEPEND="${RDEPEND}
2075 + =sys-freebsd/freebsd-mk-defs-${RV}*
2076 + =sys-freebsd/freebsd-sources-${RV}*"
2077 +
2078 +S=${WORKDIR}/lib/libpam/modules
2079 +
2080 +pkg_setup() {
2081 + # Avoid installing pam_ssh as that has its own ebuild.
2082 + mymakeopts="${mymakeopts} WITHOUT_OPENSSH= "
2083 + use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS= "
2084 + use nis || mymakeopts="${mymakeopts} WITHOUT_NIS= "
2085 +}
2086 +
2087 +src_prepare() {
2088 + for module in pam_deny pam_passwdqc pam_permit pam_krb5; do
2089 + sed -i -e "s:${module}::" "${S}"/modules.inc || die
2090 + done
2091 +}
2092 +
2093 +src_install() {
2094 + freebsd_src_install "LIBDIR=/$(get_libdir)/security"
2095 +
2096 + dodoc "${FILESDIR}/README.pamd"
2097 +}
2098
2099 diff --git a/sys-freebsd/freebsd-pf/Manifest b/sys-freebsd/freebsd-pf/Manifest
2100 index 79cfc36..5c4e450 100644
2101 --- a/sys-freebsd/freebsd-pf/Manifest
2102 +++ b/sys-freebsd/freebsd-pf/Manifest
2103 @@ -5,5 +5,6 @@ DIST freebsd-etc-9.1.tar.bz2 207776 SHA256 a317bf85532d6192f5506e8d7bd5d5c201fe2
2104 DIST freebsd-sbin-8.2.tar.bz2 1211665 SHA256 8b7e21a66b4696e8763d29b8b02b2d35f29fc51820a194d1e469e7cace84c527 SHA512 c6643c29ab62344c98d8991708798730ee1c17e6478071718beeaa79788300a1f4ed2e6aeb8e39e3c216877d4ed2ac85b2a9531d534f1ac5125a508927898959 WHIRLPOOL 2a21cd0f15f95d66718031680ac87f1fe73f1e1b03cb012e1db1dd1bd2fe2bb7897457a8ba2f5a28c8806775611dca542cbadec16566c47ab9efa673e2cb53f3
2105 DIST freebsd-sbin-9.1.tar.bz2 1273913 SHA256 45008b0733b232ef03707ef5fa3e5c889e3b3728393d736bd9a869ea83be6447 SHA512 9f186602b7de96f268c352ca386986652fddf5570e7eca1afa8c0d2bdc83b57df1198efe47f36dd5c7a6abf4f9c935f1c8207a4a12a6b2153bd6c3c6292719dc WHIRLPOOL 20920dfa9607a0ce854319cef29bbd77fb1b31f6f6cfd5ac60cbd678169e43929e215743fe636d0c224443f3e6149a8f07c292d647f7f901592795ac292699f9
2106 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
2107 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
2108 DIST freebsd-usbin-8.2.tar.bz2 2443024 SHA256 aa7cabf10f5c3a9daabea32e4de24d04ec312247842981476da666eff5054603 SHA512 bcb8ff3df54848b9107bbb52e5ced7a91e24bb181f06769b6997221729b8064ec17652eaf7500de3268cbcb63ff5760beb54d15fc78c27b02687b5b1067c74a6 WHIRLPOOL 20f5278e2a1dd387a75b44f10507958d6c0e84a2faa1bddbf808c14ab86d8dd14a956192911bbc1880f5f5f7bd05972dcbb4aec85d241f0dcf91bf4246883f0a
2109 DIST freebsd-usbin-9.1.tar.bz2 2670916 SHA256 b938c20b8c09aa9a610e13b69b9afeea72f561ab3636a59fba2bdac290f4db75 SHA512 21c234312f70eb35cd2926519efc1f61592892f5d0940786dbeb959c3c5ec7819a51ae95c6e8a1a06aa01f669350fe0fd3dd7c4ec8a84dd6b90f24cb192356ca WHIRLPOOL 7f6ad2eb5410cc5e685881654a788807848af026b1277a974682755ab7c9db28f576bfd1576441ea10c5f1e9edb7d30a4a23fb8eccd6d69d86ecc9ce4c9adc7e
2110
2111 diff --git a/sys-freebsd/freebsd-pf/files/freebsd-pf-11.0-libevent.patch b/sys-freebsd/freebsd-pf/files/freebsd-pf-11.0-libevent.patch
2112 new file mode 100644
2113 index 00000000..0f3ecb1
2114 --- /dev/null
2115 +++ b/sys-freebsd/freebsd-pf/files/freebsd-pf-11.0-libevent.patch
2116 @@ -0,0 +1,13 @@
2117 +diff --git a/usr.sbin/ftp-proxy/Makefile b/usr.sbin/ftp-proxy/Makefile
2118 +index 941505f..df5ccb2 100644
2119 +--- a/usr.sbin/ftp-proxy/Makefile
2120 ++++ b/usr.sbin/ftp-proxy/Makefile
2121 +@@ -7,8 +7,6 @@ MAN= ftp-proxy.8
2122 +
2123 + SRCS= ftp-proxy.c filter.c
2124 +
2125 +-CFLAGS+=-I${.CURDIR}/../../contrib/pf/libevent
2126 +-
2127 + LIBADD= event
2128 +
2129 + WARNS?= 3
2130
2131 diff --git a/sys-freebsd/freebsd-pf/files/freebsd-pf-11.0-pflogd.patch b/sys-freebsd/freebsd-pf/files/freebsd-pf-11.0-pflogd.patch
2132 new file mode 100644
2133 index 00000000..6435280
2134 --- /dev/null
2135 +++ b/sys-freebsd/freebsd-pf/files/freebsd-pf-11.0-pflogd.patch
2136 @@ -0,0 +1,13 @@
2137 +diff --git a/sbin/pflogd/Makefile b/sbin/pflogd/Makefile
2138 +index b3822dd..5912ad2 100644
2139 +--- a/sbin/pflogd/Makefile
2140 ++++ b/sbin/pflogd/Makefile
2141 +@@ -7,8 +7,6 @@ PROG= pflogd
2142 + SRCS= pflogd.c pidfile.c privsep.c privsep_fdpass.c
2143 + MAN= pflogd.8
2144 +
2145 +-CFLAGS+=-include ${.CURDIR}/../../lib/libpcap/config.h
2146 +-
2147 + LIBADD= pcap
2148 +
2149 + WARNS?= 2
2150
2151 diff --git a/sys-freebsd/freebsd-pf/freebsd-pf-11.0.ebuild b/sys-freebsd/freebsd-pf/freebsd-pf-11.0.ebuild
2152 new file mode 100644
2153 index 00000000..914cfe1
2154 --- /dev/null
2155 +++ b/sys-freebsd/freebsd-pf/freebsd-pf-11.0.ebuild
2156 @@ -0,0 +1,71 @@
2157 +# Copyright 1999-2016 Gentoo Foundation
2158 +# Distributed under the terms of the GNU General Public License v2
2159 +# $Id$
2160 +
2161 +EAPI=5
2162 +
2163 +inherit bsdmk freebsd user
2164 +
2165 +DESCRIPTION="FreeBSD's base system libraries"
2166 +SLOT="0"
2167 +
2168 +IUSE=""
2169 +
2170 +# Crypto is needed to have an internal OpenSSL header
2171 +if [[ ${PV} != *9999* ]]; then
2172 + KEYWORDS="~amd64-fbsd ~x86-fbsd"
2173 +fi
2174 +
2175 +EXTRACTONLY="
2176 + usr.sbin/
2177 + sbin/
2178 + contrib/pf/
2179 + etc/
2180 +"
2181 +
2182 +RDEPEND="net-libs/libpcap"
2183 +DEPEND="${RDEPEND}
2184 + dev-libs/libevent
2185 + =sys-freebsd/freebsd-mk-defs-${RV}*
2186 + =sys-freebsd/freebsd-sources-${RV}*"
2187 +
2188 +S="${WORKDIR}"
2189 +
2190 +SUBDIRS="usr.sbin/authpf sbin/pfctl sbin/pflogd usr.sbin/ftp-proxy"
2191 +
2192 +pkg_setup() {
2193 + enewgroup authpf 63
2194 +}
2195 +
2196 +src_prepare() {
2197 + # pcap-int.h redefines snprintf as pcap_snprintf
2198 + epatch "${FILESDIR}/${PN}-9.0-pcap_pollution.patch"
2199 + # Use system's libevent
2200 + epatch "${FILESDIR}/${PN}-11.0-libevent.patch"
2201 + epatch "${FILESDIR}/${PN}-11.0-pflogd.patch"
2202 + epatch "${FILESDIR}/${PN}-9.0-bpf.patch"
2203 + # Link in kernel sources
2204 + [[ ! -e "${WORKDIR}/sys" ]] && ln -s "/usr/src/sys" "${WORKDIR}/sys"
2205 +}
2206 +
2207 +src_compile() {
2208 + for dir in ${SUBDIRS}; do
2209 + einfo "Starting make in ${dir}"
2210 + cd "${S}/${dir}" || die
2211 + freebsd_src_compile || die "Make ${dir} failed"
2212 + done
2213 +}
2214 +
2215 +src_install() {
2216 + for dir in ${SUBDIRS}; do
2217 + einfo "Starting install in ${dir}"
2218 + cd "${S}/${dir}" || die
2219 + freebsd_src_install || die "Install ${dir} failed"
2220 + done
2221 +
2222 + cd "${WORKDIR}"/etc
2223 + insinto /etc
2224 + doins pf.os
2225 + # pf.initd provided by openrc, but no pf.confd
2226 + newconfd "${FILESDIR}/pf.confd" pf
2227 +}
2228
2229 diff --git a/sys-freebsd/freebsd-rescue/Manifest b/sys-freebsd/freebsd-rescue/Manifest
2230 index e4c4149..49010aa 100644
2231 --- a/sys-freebsd/freebsd-rescue/Manifest
2232 +++ b/sys-freebsd/freebsd-rescue/Manifest
2233 @@ -15,6 +15,7 @@ DIST freebsd-rescue-9.1.tar.bz2 3939 SHA256 15794c65e2977a2623f0a09090f835c67e6e
2234 DIST freebsd-sbin-8.2.tar.bz2 1211665 SHA256 8b7e21a66b4696e8763d29b8b02b2d35f29fc51820a194d1e469e7cace84c527 SHA512 c6643c29ab62344c98d8991708798730ee1c17e6478071718beeaa79788300a1f4ed2e6aeb8e39e3c216877d4ed2ac85b2a9531d534f1ac5125a508927898959 WHIRLPOOL 2a21cd0f15f95d66718031680ac87f1fe73f1e1b03cb012e1db1dd1bd2fe2bb7897457a8ba2f5a28c8806775611dca542cbadec16566c47ab9efa673e2cb53f3
2235 DIST freebsd-sbin-9.1.tar.bz2 1273913 SHA256 45008b0733b232ef03707ef5fa3e5c889e3b3728393d736bd9a869ea83be6447 SHA512 9f186602b7de96f268c352ca386986652fddf5570e7eca1afa8c0d2bdc83b57df1198efe47f36dd5c7a6abf4f9c935f1c8207a4a12a6b2153bd6c3c6292719dc WHIRLPOOL 20920dfa9607a0ce854319cef29bbd77fb1b31f6f6cfd5ac60cbd678169e43929e215743fe636d0c224443f3e6149a8f07c292d647f7f901592795ac292699f9
2236 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
2237 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
2238 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
2239 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
2240 DIST freebsd-ubin-8.2.tar.bz2 1808012 SHA256 6b99554f3ad6ee052069b347eb6e6219b71598d7b222acb90a24cbfc805c7b68 SHA512 48d0103323e820c431aa4f62d3be40cb3b200fb62e3de01f36c88760395bf2ba3367c51f3fa72da4dbccc2812176a051a12ca5cb7e84125c3e0fc78d4cab2c29 WHIRLPOOL ea8f3a29a37b42c2b5bcc0f2c343fa1538522157ef075363c94606a4620a590e9a03f856ce2494e3e727935b62431991d0aa9fde71de699e78b4fe225bdf1c2c
2241
2242 diff --git a/sys-freebsd/freebsd-rescue/files/freebsd-rescue-11.0-rename-libs.patch b/sys-freebsd/freebsd-rescue/files/freebsd-rescue-11.0-rename-libs.patch
2243 new file mode 100644
2244 index 00000000..3103574
2245 --- /dev/null
2246 +++ b/sys-freebsd/freebsd-rescue/files/freebsd-rescue-11.0-rename-libs.patch
2247 @@ -0,0 +1,22 @@
2248 +diff --git a/rescue/rescue/Makefile b/rescue/rescue/Makefile
2249 +index e747c02..a061436 100644
2250 +--- a/rescue/rescue/Makefile
2251 ++++ b/rescue/rescue/Makefile
2252 +@@ -54,7 +54,7 @@ CRUNCH_PROGS_bin= cat chflags chio chmod cp date dd df echo \
2253 + ed expr getfacl hostname kenv kill ln ls mkdir mv \
2254 + pkill ps pwd realpath rm rmdir setfacl sh sleep stty \
2255 + sync test
2256 +-CRUNCH_LIBS+= -lcrypt -ledit -ljail -lkvm -lelf -ll -ltermcapw -lutil -lxo
2257 ++CRUNCH_LIBS+= -lcrypt -ledit -ljail -lkvm -lelf -lfl -lncursesw -lutil -lxo
2258 + CRUNCH_BUILDTOOLS+= bin/sh
2259 +
2260 + # Additional options for specific programs
2261 +@@ -128,7 +128,7 @@ CRUNCH_LIBS+= -lavl -lzpool -lzfs_core -lzfs -lnvpair -lpthread -luutil -lumem
2262 + # liblzma needs pthread
2263 + CRUNCH_LIBS+= -lpthread
2264 + .endif
2265 +-CRUNCH_LIBS+= -lgeom -lbsdxml -lkiconv
2266 ++CRUNCH_LIBS+= -lgeom -lexpat -lkiconv
2267 + .if ${MK_OPENSSL} == "no"
2268 + CRUNCH_LIBS+= -lmd
2269 + .endif
2270
2271 diff --git a/sys-freebsd/freebsd-rescue/freebsd-rescue-11.0.ebuild b/sys-freebsd/freebsd-rescue/freebsd-rescue-11.0.ebuild
2272 new file mode 100644
2273 index 00000000..f473264
2274 --- /dev/null
2275 +++ b/sys-freebsd/freebsd-rescue/freebsd-rescue-11.0.ebuild
2276 @@ -0,0 +1,85 @@
2277 +# Copyright 1999-2016 Gentoo Foundation
2278 +# Distributed under the terms of the GNU General Public License v2
2279 +# $Id$
2280 +
2281 +EAPI=5
2282 +
2283 +inherit bsdmk freebsd toolchain-funcs
2284 +
2285 +DESCRIPTION="FreeBSD's rescue binaries"
2286 +SLOT="0"
2287 +LICENSE="BSD zfs? ( CDDL )"
2288 +
2289 +IUSE="atm netware nis zfs"
2290 +
2291 +if [[ ${PV} != *9999* ]]; then
2292 + KEYWORDS="~amd64-fbsd ~x86-fbsd"
2293 +fi
2294 +
2295 +EXTRACTONLY="
2296 + usr.bin/
2297 + contrib/
2298 + lib/
2299 + bin/
2300 + sbin/
2301 + usr.sbin/
2302 + gnu/
2303 + sys/
2304 + libexec/
2305 + rescue/
2306 +"
2307 +
2308 +RDEPEND=""
2309 +DEPEND="sys-devel/flex
2310 + app-arch/xz-utils[static-libs]
2311 + sys-libs/ncurses[static-libs]
2312 + dev-libs/expat[static-libs]
2313 + app-arch/bzip2[static-libs]
2314 + dev-libs/libedit[static-libs]
2315 + dev-libs/libxml2:2[static-libs]
2316 + dev-libs/openssl:0=[static-libs]
2317 + sys-libs/zlib[static-libs]
2318 + sys-libs/readline[static-libs]
2319 + =sys-freebsd/freebsd-lib-${RV}*[atm?,netware?]
2320 + =sys-freebsd/freebsd-sources-${RV}*
2321 + =sys-freebsd/freebsd-mk-defs-${RV}*
2322 + zfs? ( =sys-freebsd/freebsd-cddl-${RV}* )"
2323 +
2324 +S="${WORKDIR}/rescue"
2325 +
2326 +pkg_setup() {
2327 + # Add the required source files.
2328 + use zfs && EXTRACTONLY+="cddl/ "
2329 +
2330 + use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= "
2331 + use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= "
2332 + use nis || mymakeopts="${mymakeopts} WITHOUT_NIS= "
2333 + use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= "
2334 + mymakeopts="${mymakeopts} NO_PIC= "
2335 +}
2336 +
2337 +src_prepare() {
2338 + # As they are patches from ${WORKDIR} apply them by hand
2339 + cd "${WORKDIR}" || die
2340 + epatch "${FILESDIR}/${PN}-10.0-zlib.patch"
2341 + epatch "${FILESDIR}/${PN}-11.0-rename-libs.patch"
2342 + epatch "${FILESDIR}/freebsd-ubin-10.2-bsdxml.patch"
2343 +}
2344 +
2345 +src_compile() {
2346 + export ESED=/usr/bin/sed
2347 + unalias sed
2348 +
2349 + tc-export CC
2350 + # crunchgen is now checks env MAKE.
2351 + # Use to force BSD's make
2352 + export MAKE=/usr/bin/make
2353 +
2354 + cd "${WORKDIR}/lib/libarchive" || die
2355 + echo "#include <expat.h>" > bsdxml.h
2356 + freebsd_src_compile
2357 + export CC="${CC} -L${WORKDIR}/lib/libarchive"
2358 +
2359 + cd "${S}" || die
2360 + freebsd_src_compile
2361 +}
2362
2363 diff --git a/sys-freebsd/freebsd-sbin/Manifest b/sys-freebsd/freebsd-sbin/Manifest
2364 index 321d698..37092fc 100644
2365 --- a/sys-freebsd/freebsd-sbin/Manifest
2366 +++ b/sys-freebsd/freebsd-sbin/Manifest
2367 @@ -9,6 +9,7 @@ DIST freebsd-libexec-9.1.tar.bz2 304592 SHA256 71e6e9e41328c2148c54b81ad9b59f912
2368 DIST freebsd-sbin-8.2.tar.bz2 1211665 SHA256 8b7e21a66b4696e8763d29b8b02b2d35f29fc51820a194d1e469e7cace84c527 SHA512 c6643c29ab62344c98d8991708798730ee1c17e6478071718beeaa79788300a1f4ed2e6aeb8e39e3c216877d4ed2ac85b2a9531d534f1ac5125a508927898959 WHIRLPOOL 2a21cd0f15f95d66718031680ac87f1fe73f1e1b03cb012e1db1dd1bd2fe2bb7897457a8ba2f5a28c8806775611dca542cbadec16566c47ab9efa673e2cb53f3
2369 DIST freebsd-sbin-9.1.tar.bz2 1273913 SHA256 45008b0733b232ef03707ef5fa3e5c889e3b3728393d736bd9a869ea83be6447 SHA512 9f186602b7de96f268c352ca386986652fddf5570e7eca1afa8c0d2bdc83b57df1198efe47f36dd5c7a6abf4f9c935f1c8207a4a12a6b2153bd6c3c6292719dc WHIRLPOOL 20920dfa9607a0ce854319cef29bbd77fb1b31f6f6cfd5ac60cbd678169e43929e215743fe636d0c224443f3e6149a8f07c292d647f7f901592795ac292699f9
2370 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
2371 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
2372 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
2373 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
2374 DIST freebsd-usbin-8.2.tar.bz2 2443024 SHA256 aa7cabf10f5c3a9daabea32e4de24d04ec312247842981476da666eff5054603 SHA512 bcb8ff3df54848b9107bbb52e5ced7a91e24bb181f06769b6997221729b8064ec17652eaf7500de3268cbcb63ff5760beb54d15fc78c27b02687b5b1067c74a6 WHIRLPOOL 20f5278e2a1dd387a75b44f10507958d6c0e84a2faa1bddbf808c14ab86d8dd14a956192911bbc1880f5f5f7bd05972dcbb4aec85d241f0dcf91bf4246883f0a
2375
2376 diff --git a/sys-freebsd/freebsd-sbin/freebsd-sbin-11.0.ebuild b/sys-freebsd/freebsd-sbin/freebsd-sbin-11.0.ebuild
2377 new file mode 100644
2378 index 00000000..b9ccdc5
2379 --- /dev/null
2380 +++ b/sys-freebsd/freebsd-sbin/freebsd-sbin-11.0.ebuild
2381 @@ -0,0 +1,100 @@
2382 +# Copyright 1999-2016 Gentoo Foundation
2383 +# Distributed under the terms of the GNU General Public License v2
2384 +# $Id$
2385 +
2386 +EAPI=5
2387 +
2388 +inherit bsdmk freebsd multilib
2389 +
2390 +DESCRIPTION="FreeBSD sbin utils"
2391 +SLOT="0"
2392 +
2393 +if [[ ${PV} != *9999* ]]; then
2394 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
2395 +fi
2396 +
2397 +EXTRACTONLY="
2398 + sbin/
2399 + contrib/
2400 + lib/
2401 + libexec/
2402 + usr.sbin/
2403 + etc/
2404 +"
2405 +
2406 +RDEPEND="=sys-freebsd/freebsd-lib-${RV}*[ipv6?,atm?,netware?]
2407 + =sys-freebsd/freebsd-libexec-${RV}*
2408 + >=dev-libs/expat-2.0.1
2409 + ssl? ( dev-libs/openssl:0= )
2410 + >=dev-libs/libedit-20120311.3.0-r1
2411 + sys-libs/readline:0=
2412 + || (
2413 + sys-process/cronie
2414 + sys-process/vixie-cron
2415 + )
2416 + atm? ( net-analyzer/bsnmp )"
2417 +DEPEND="${RDEPEND}
2418 + !build? ( =sys-freebsd/freebsd-sources-${RV}* )
2419 + =sys-freebsd/freebsd-mk-defs-${RV}*"
2420 +
2421 +S="${WORKDIR}/sbin"
2422 +
2423 +IUSE="atm ipfilter +pf ipv6 build ssl +cxx netware"
2424 +
2425 +pkg_setup() {
2426 + # Add the required source files.
2427 + use build && EXTRACTONLY+="sys/ "
2428 +
2429 + use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= "
2430 + use cxx || mymakeopts="${mymakeopts} WITHOUT_CXX="
2431 + use ipfilter || mymakeopts="${mymakeopts} WITHOUT_IPFILTER= "
2432 + use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6= WITHOUT_INET6_SUPPORT="
2433 + use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= "
2434 + use pf || mymakeopts="${mymakeopts} WITHOUT_PF= "
2435 + use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL="
2436 +}
2437 +
2438 +REMOVE_SUBDIRS="dhclient pfctl pflogd rcorder resolvconf"
2439 +
2440 +PATCHES=( "${FILESDIR}/${PN}-setXid.patch"
2441 + "${FILESDIR}/${PN}-10.0-zlib.patch"
2442 + "${FILESDIR}/${PN}-6.2-ldconfig.patch"
2443 + "${FILESDIR}/${PN}-6.1-pr102701.patch" )
2444 +
2445 +src_prepare() {
2446 + if [[ ! -e "${WORKDIR}/sys" ]]; then
2447 + use build || ln -s "/usr/src/sys" "${WORKDIR}/sys"
2448 + fi
2449 +}
2450 +
2451 +src_install() {
2452 + mymakeopts="${mymakeopts} GEOM_CLASS_DIR=/$(get_libdir)/geom "
2453 + freebsd_src_install
2454 + keepdir /var/log
2455 + # Needed by ldconfig:
2456 + keepdir /var/run
2457 +
2458 + # Maybe ship our own sysctl.conf so things like radvd work out of the box.
2459 + # New wireless config method requires regdomain.xml in /etc
2460 + cd "${WORKDIR}/etc/" || die
2461 + insinto /etc
2462 + doins minfree sysctl.conf regdomain.xml || die
2463 +
2464 + # Install a crontab for adjkerntz
2465 + insinto /etc/cron.d
2466 + newins "${FILESDIR}/adjkerntz-crontab" adjkerntz
2467 +
2468 + # Install the periodic stuff (needs probably to be ported in a more
2469 + # gentooish way)
2470 + cd "${WORKDIR}/etc/periodic" || die
2471 +
2472 + doperiodic security \
2473 + security/*.ipfwlimit \
2474 + security/*.ipfwdenied || die
2475 +
2476 + use ipfilter && { doperiodic security \
2477 + security/*.ipfdenied || die ; }
2478 +
2479 + use pf && { doperiodic security \
2480 + security/*.pfdenied || die ; }
2481 +}
2482
2483 diff --git a/sys-freebsd/freebsd-share/Manifest b/sys-freebsd/freebsd-share/Manifest
2484 index 92a7ada..44560fd 100644
2485 --- a/sys-freebsd/freebsd-share/Manifest
2486 +++ b/sys-freebsd/freebsd-share/Manifest
2487 @@ -13,6 +13,7 @@ DIST freebsd-sbin-9.1.tar.bz2 1273913 SHA256 45008b0733b232ef03707ef5fa3e5c889e3
2488 DIST freebsd-share-8.2.tar.bz2 3797560 SHA256 dd082c6ddbf8e08ec91d9810d51af4111339bed912b0f74d05be283780292ba0 SHA512 b3f964253f80e58cde12f26e48a23aa75c17b9ab2810f91a4bd2d7efbe902af7c73c219f8373a4fc97ee0a35d25627b8815c79c136ef18620acc8bd0ee5bd6c4 WHIRLPOOL 42326ad6139feadf80509f5e810f6a86009ad3a69aad9550c6355389773c28d5b2f7930eaa852f8442808485d13e5b758ed3420e39048bb3966785e6953119ea
2489 DIST freebsd-share-9.1.tar.bz2 6733003 SHA256 2bbd8aa05d52b18a1780772a8518d79d375c1eeae98f52fb6aded233ac2491d7 SHA512 9665e3d5253f49a55921012bd21a8688210a1993ba6be4ad17b5ba5619104a50f3199d49a0eb83cf29db5a06c407beb15616bfe71338c680fe34ec47564c4b43 WHIRLPOOL 7d15596888ac42af1a0c125591283524ff794dccbf9f6592963602f046a45ca073b10bda43c2d0d662fd3414753de64c05293788e03c4eea67de55d9bc083c11
2490 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
2491 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
2492 DIST freebsd-ubin-8.2.tar.bz2 1808012 SHA256 6b99554f3ad6ee052069b347eb6e6219b71598d7b222acb90a24cbfc805c7b68 SHA512 48d0103323e820c431aa4f62d3be40cb3b200fb62e3de01f36c88760395bf2ba3367c51f3fa72da4dbccc2812176a051a12ca5cb7e84125c3e0fc78d4cab2c29 WHIRLPOOL ea8f3a29a37b42c2b5bcc0f2c343fa1538522157ef075363c94606a4620a590e9a03f856ce2494e3e727935b62431991d0aa9fde71de699e78b4fe225bdf1c2c
2493 DIST freebsd-ubin-9.1.tar.bz2 1910472 SHA256 ff6e586f213534b6ec2e65002c0dee64063d76ddad515c12221b1a80a1815e48 SHA512 74ae0aceec8597aa66c3f1ab313f0685a3c63d7273c36ae7baf8794275ad9bca241c60c3f6281cccf6d531d250d7611099977d3b1a27279cef3586401b6af05e WHIRLPOOL c85a3c9cf2bceff2c60ff03556bcc81d3aca22b0bce3c9538990071ac0a907236eee5ae7743ad22c5fd309b047ebf392aaaf2fe177ef5790ea869aff3da7e2fe
2494 DIST freebsd-usbin-8.2.tar.bz2 2443024 SHA256 aa7cabf10f5c3a9daabea32e4de24d04ec312247842981476da666eff5054603 SHA512 bcb8ff3df54848b9107bbb52e5ced7a91e24bb181f06769b6997221729b8064ec17652eaf7500de3268cbcb63ff5760beb54d15fc78c27b02687b5b1067c74a6 WHIRLPOOL 20f5278e2a1dd387a75b44f10507958d6c0e84a2faa1bddbf808c14ab86d8dd14a956192911bbc1880f5f5f7bd05972dcbb4aec85d241f0dcf91bf4246883f0a
2495
2496 diff --git a/sys-freebsd/freebsd-share/freebsd-share-11.0.ebuild b/sys-freebsd/freebsd-share/freebsd-share-11.0.ebuild
2497 new file mode 100644
2498 index 00000000..75cbfc0
2499 --- /dev/null
2500 +++ b/sys-freebsd/freebsd-share/freebsd-share-11.0.ebuild
2501 @@ -0,0 +1,114 @@
2502 +# Copyright 1999-2016 Gentoo Foundation
2503 +# Distributed under the terms of the GNU General Public License v2
2504 +# $Id$
2505 +
2506 +EAPI=5
2507 +
2508 +inherit bsdmk freebsd
2509 +
2510 +DESCRIPTION="FreeBSD shared tools/files"
2511 +SLOT="0"
2512 +LICENSE="BSD zfs? ( CDDL )"
2513 +
2514 +IUSE="doc usb zfs"
2515 +
2516 +if [[ ${PV} != *9999* ]]; then
2517 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
2518 +fi
2519 +
2520 +EXTRACTONLY="
2521 + share/
2522 + contrib/
2523 + gnu/
2524 + usr.bin/
2525 + usr.sbin/
2526 + sbin/
2527 + bin/
2528 + lib/
2529 + etc/
2530 + tools/tools/locale/
2531 +"
2532 +
2533 +DEPEND="=sys-freebsd/freebsd-mk-defs-${RV}*
2534 + =sys-freebsd/freebsd-sources-${RV}*"
2535 +RDEPEND="sys-apps/miscfiles"
2536 +
2537 +RESTRICT="strip"
2538 +
2539 +S="${WORKDIR}/share"
2540 +
2541 +pkg_setup() {
2542 + # Add the required source files.
2543 + use zfs && EXTRACTONLY+="cddl/ "
2544 +
2545 + use doc || mymakeopts="${mymakeopts} WITHOUT_SHAREDOCS= "
2546 + use usb || mymakeopts="${mymakeopts} WITHOUT_USB= "
2547 + use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= "
2548 + [[ ! -e /usr/bin/vtfontcvt ]] && mymakeopts="${mymakeopts} WITHOUT_VT= "
2549 + [[ ! -e /usr/bin/localedef ]] && mymakeopts="${mymakeopts} WITHOUT_LOCALES= "
2550 + mymakeopts="${mymakeopts} WITHOUT_SENDMAIL= WITHOUT_CLANG= "
2551 +}
2552 +
2553 +REMOVE_SUBDIRS="mk termcap zoneinfo tabset"
2554 +
2555 +PATCHES=( "${FILESDIR}/${PN}-10.3-gentoo-skel.patch"
2556 + "${FILESDIR}/${PN}-10.0-gentoo-eapi3.patch"
2557 + "${FILESDIR}/${PN}-10.2-gnu-miscfiles.patch" )
2558 +
2559 +src_prepare() {
2560 + # Remove make.conf manpage as it describes bsdmk's make.conf.
2561 + sed -i -e 's:make.conf.5::' "${S}/man/man5/Makefile"
2562 + # Remove rc.conf manpage as it describes bsd's rc.conf.
2563 + sed -i -e 's:\brc.conf.5::' "${S}/man/man5/Makefile"
2564 + sed -i -e 's:\brc.conf.local.5::' "${S}/man/man5/Makefile"
2565 + # Remove mailer.conf manpage
2566 + sed -i -e 's:mailer.conf.5::' "${S}/man/man5/Makefile"
2567 + # Remove pbm and moduli(ssh) manpages
2568 + sed -i -e 's:pbm.5::' -e 's:moduli.5::' "${S}/man/man5/Makefile"
2569 + # Remove builtins manpage
2570 + sed -i -e '/builtins\.1/d' "${S}/man/man1/Makefile"
2571 + # Remove rc manpages
2572 + sed -i -e '/rc.8/d' "${S}/man/man8/Makefile"
2573 + # Remove hv_kvp_daemon.8 manpage. It's provided by freebsd-usbin.
2574 + sed -i -e '/hv_kvp_daemon.8/d' "${S}/man/man8/Makefile"
2575 +
2576 + # Don't install the arch-specific directories in subdirectories
2577 + sed -i -e '/MANSUBDIR/d' "${S}"/man/man4/man4.{i386,sparc64}/Makefile
2578 +
2579 + # Remove them so that they can't be included by error
2580 + rm -rf "${S}"/mk/*.mk
2581 +
2582 + # Make proper symlinks by defining the full target.
2583 + local sdir
2584 + for sdir in colldef monetdef msgdef numericdef timedef
2585 + do
2586 + sed -e 's:\${enc2}$:\${enc2}/\${FILESNAME}:g' -i \
2587 + "${S}/${sdir}/Makefile" || \
2588 + die "Error fixing ${sdir}/Makefile"
2589 + done
2590 + if [[ ! -e "${WORKDIR}/sys" ]]; then
2591 + ln -s "/usr/src/sys" "${WORKDIR}/sys" || die "failed to set sys symlink"
2592 + fi
2593 +}
2594 +
2595 +src_compile() {
2596 + export ESED="/usr/bin/sed"
2597 +
2598 + # libiconv support.
2599 + # i18n/csmapper/APPLE requires mkcsmapper_static
2600 + # i18n/esdb/APPLE requires mkesdb_static
2601 + for pkg in mkcsmapper_static mkesdb_static
2602 + do
2603 + cd "${WORKDIR}"/usr.bin/${pkg} || die
2604 + freebsd_src_compile
2605 + done
2606 +
2607 + # This is a groff problem and not a -shared problem.
2608 + cd "${S}" || die
2609 + export GROFF_TMAC_PATH="/usr/share/tmac/:/usr/share/groff/1.22.2/tmac/"
2610 + freebsd_src_compile -j1 || die "emake failed"
2611 +}
2612 +
2613 +src_install() {
2614 + freebsd_src_install -j1 DOCDIR=/usr/share/doc/${PF}
2615 +}
2616
2617 diff --git a/sys-freebsd/freebsd-sources/Manifest b/sys-freebsd/freebsd-sources/Manifest
2618 index adb7ab4..46d0fff 100644
2619 --- a/sys-freebsd/freebsd-sources/Manifest
2620 +++ b/sys-freebsd/freebsd-sources/Manifest
2621 @@ -12,5 +12,6 @@ DIST freebsd-sources-SA-1619-sendmsg.patch 247 SHA256 d847e42634e26e29b3ce1d68d2
2622 DIST freebsd-sources-SA-1620-linux.patch 492 SHA256 a62f5402b2a3d2b73b684854eaed45864dade33f7b04d6469b556776866380a9 SHA512 1fb28b25ac5f89e2f7fa9a1f74ba83b4c949f2175217b669b5fcd2062c54307dcb50ad072acbe18162272b9bc29ba40ac4e19db1564a2959e885ac826a332ae5 WHIRLPOOL 7ba8da63513a495418a7e6433c4814eedb43e0305ada423057d2df27e90a51ce8b3caa7a06665fe114185c6335426ed12dbb346ef2a2c2c0d168a04707aa6395
2623 DIST freebsd-sources-SA-1621-stat.patch 223 SHA256 dd924b1f983ff653edb6676cb5f02621309c3493501c9741a35a2cbcc021cbbf SHA512 501244c0831d2aeb37c8a8aaa762cc6c8c39929355e6695df23dc83c78d6bb499dcb903f50c17e3f7774306d53836a0633d65e284167590c015aa1f8e10e5e4a WHIRLPOOL cd17cd613a2bb234224a21b491d4bfee6e9d9c43126689a8600f9d46eccf835661078fc926fd8a73599d30db770cb9fa0baa2817dcfb6ab3b06c1e39374bd946
2624 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
2625 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
2626 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
2627 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
2628
2629 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-11.0-gentoo-gcc.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-11.0-gentoo-gcc.patch
2630 new file mode 100644
2631 index 00000000..1d3c8d6
2632 --- /dev/null
2633 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-11.0-gentoo-gcc.patch
2634 @@ -0,0 +1,13 @@
2635 +diff --git a/sys/conf/newvers.sh b/sys/conf/newvers.sh
2636 +index e4b2ad4..411bedf 100644
2637 +--- a/sys/conf/newvers.sh
2638 ++++ b/sys/conf/newvers.sh
2639 +@@ -110,7 +110,7 @@ else
2640 + t=`date`
2641 + fi
2642 + i=`${MAKE:-make} -V KERN_IDENT`
2643 +-compiler_v=$($(${MAKE:-make} -V CC) -v 2>&1 | grep -w 'version')
2644 ++compiler_v=$($(${MAKE:-make} -V CC) -v 2>&1 | grep 'version' | tail -n 1)
2645 +
2646 + for dir in /usr/bin /usr/local/bin; do
2647 + if [ ! -z "${svnversion}" ] ; then
2648
2649 diff --git a/sys-freebsd/freebsd-sources/files/freebsd-sources-11.0-gentoo.patch b/sys-freebsd/freebsd-sources/files/freebsd-sources-11.0-gentoo.patch
2650 new file mode 100644
2651 index 00000000..6acd6aa
2652 --- /dev/null
2653 +++ b/sys-freebsd/freebsd-sources/files/freebsd-sources-11.0-gentoo.patch
2654 @@ -0,0 +1,22 @@
2655 +diff --git a/sys/conf/kern.mk b/sys/conf/kern.mk
2656 +index e27ea93..615dbac 100644
2657 +--- a/sys/conf/kern.mk
2658 ++++ b/sys/conf/kern.mk
2659 +@@ -5,7 +5,7 @@
2660 + #
2661 + CWARNFLAGS?= -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes \
2662 + -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual \
2663 +- -Wundef -Wno-pointer-sign ${FORMAT_EXTENSIONS} \
2664 ++ -Wundef -Wno-pointer-sign \
2665 + -Wmissing-include-dirs -fdiagnostics-show-option \
2666 + -Wno-unknown-pragmas \
2667 + ${CWARNEXTRA}
2668 +@@ -86,7 +86,7 @@ FORMAT_EXTENSIONS= -fformat-extensions
2669 + # Setting -mno-sse implies -mno-sse2, -mno-sse3, -mno-ssse3, -mno-sse41 and -mno-sse42
2670 + #
2671 + .if ${MACHINE_CPUARCH} == "i386"
2672 +-CFLAGS.gcc+= -mno-align-long-strings -mpreferred-stack-boundary=2
2673 ++CFLAGS.gcc+= -mpreferred-stack-boundary=2
2674 + CFLAGS.clang+= -mno-aes -mno-avx
2675 + CFLAGS+= -mno-mmx -mno-sse -msoft-float
2676 + INLINE_LIMIT?= 8000
2677
2678 diff --git a/sys-freebsd/freebsd-sources/freebsd-sources-11.0.ebuild b/sys-freebsd/freebsd-sources/freebsd-sources-11.0.ebuild
2679 new file mode 100644
2680 index 00000000..aebc8cf
2681 --- /dev/null
2682 +++ b/sys-freebsd/freebsd-sources/freebsd-sources-11.0.ebuild
2683 @@ -0,0 +1,170 @@
2684 +# Copyright 1999-2016 Gentoo Foundation
2685 +# Distributed under the terms of the GNU General Public License v2
2686 +# $Id$
2687 +
2688 +EAPI=5
2689 +
2690 +inherit bsdmk freebsd flag-o-matic toolchain-funcs
2691 +
2692 +DESCRIPTION="FreeBSD kernel sources"
2693 +SLOT="0"
2694 +LICENSE="BSD dtrace? ( CDDL ) zfs? ( CDDL )"
2695 +
2696 +IUSE="+build-kernel debug dtrace zfs"
2697 +
2698 +# Security Advisory and Errata patches.
2699 +# UPSTREAM_PATCHES=()
2700 +
2701 +if [[ ${PV} != *9999* ]]; then
2702 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
2703 + SRC_URI="${SRC_URI}
2704 + $(freebsd_upstream_patches)"
2705 +fi
2706 +
2707 +EXTRACTONLY="
2708 + sys/
2709 + contrib/bmake/
2710 + usr.bin/bmake/
2711 +"
2712 +
2713 +RDEPEND="dtrace? ( >=sys-freebsd/freebsd-cddl-9.2_rc1 )
2714 + =sys-freebsd/freebsd-mk-defs-${RV}*
2715 + !sys-freebsd/virtio-kmod
2716 + !sys-fs/fuse4bsd
2717 + !<sys-freebsd/freebsd-sources-9.2_beta1"
2718 +DEPEND="build-kernel? (
2719 + dtrace? ( >=sys-freebsd/freebsd-cddl-9.2_rc1 )
2720 + >=sys-freebsd/freebsd-usbin-9.1
2721 + =sys-freebsd/freebsd-mk-defs-${RV}*
2722 + )"
2723 +
2724 +RESTRICT="strip binchecks"
2725 +
2726 +S="${WORKDIR}/sys"
2727 +
2728 +KERN_BUILD=GENTOO
2729 +
2730 +PATCHES=( "${FILESDIR}/${PN}-9.0-disable-optimization.patch"
2731 + "${FILESDIR}/${PN}-6.0-flex-2.5.31.patch"
2732 + "${FILESDIR}/${PN}-8.0-subnet-route-pr40133.patch"
2733 + "${FILESDIR}/${PN}-7.1-includes.patch"
2734 + "${FILESDIR}/${PN}-9.0-sysctluint.patch"
2735 + "${FILESDIR}/${PN}-11.0-gentoo.patch"
2736 + "${FILESDIR}/${PN}-11.0-gentoo-gcc.patch"
2737 + "${FILESDIR}/${PN}-10.1-gcc48.patch" )
2738 +
2739 +pkg_setup() {
2740 + # Add the required source files.
2741 + use dtrace && EXTRACTONLY+="cddl/ "
2742 +
2743 + # WITHOUT_SSP= is required to boot kernel that compiled with newer gcc, bug #477914
2744 + [[ $(tc-getCC) == *gcc* ]] && mymakeopts="${mymakeopts} WITHOUT_SSP= WITHOUT_FORMAT_EXTENSIONS="
2745 + use dtrace || mymakeopts="${mymakeopts} WITHOUT_CDDL="
2746 + use zfs || mymakeopts="${mymakeopts} WITHOUT_ZFS="
2747 +}
2748 +
2749 +src_prepare() {
2750 + local conf="${S}/$(tc-arch-kernel)/conf/${KERN_BUILD}"
2751 +
2752 + cd "${WORKDIR}" || die
2753 + epatch "${FILESDIR}/freebsd-ubin-10.3-bmake-workaround.patch"
2754 + cd "${S}" || die
2755 +
2756 + # This replaces the gentoover patch, it doesn't need reapply every time.
2757 + sed -i -e 's:^REVISION=.*:REVISION="'${PVR}'":' \
2758 + -e 's:^BRANCH=.*:BRANCH="Gentoo":' \
2759 + -e 's:^VERSION=.*:VERSION="${TYPE} ${BRANCH} ${REVISION}":' \
2760 + "${S}/conf/newvers.sh"
2761 +
2762 + # __FreeBSD_cc_version comes from FreeBSD's gcc.
2763 + # on 11.0-RELEASE it's 1100001.
2764 + # FYI, can get it from gnu/usr.bin/cc/cc_tools/freebsd-native.h.
2765 + sed -e "s:-D_KERNEL:-D_KERNEL -D__FreeBSD_cc_version=1100001:g" \
2766 + -i "${S}/conf/kern.pre.mk" \
2767 + -i "${S}/conf/kmod.mk" || die "Couldn't set __FreeBSD_cc_version"
2768 +
2769 + # Remove -Werror
2770 + sed -e "s:-Werror:-Wno-error:g" \
2771 + -i "${S}/conf/kern.pre.mk" \
2772 + -i "${S}/conf/kmod.mk" || die
2773 +
2774 + # Set the kernel configuration using USE flags.
2775 + cp -f "${FILESDIR}/config-GENTOO" "${conf}" || die
2776 + use debug || echo 'nomakeoptions DEBUG' >> "${conf}"
2777 + use dtrace || echo 'nomakeoptions WITH_CTF' >> "${conf}"
2778 +
2779 + # hyperv fails to compile on x86-fbsd.
2780 + if use x86-fbsd && [[ $(tc-getCC) == *gcc* ]] ; then
2781 + echo 'nodevice hyperv' >> "${conf}"
2782 + dummy_mk modules/hyperv
2783 + fi
2784 +
2785 + # Only used with USE=build-kernel, let the kernel build with its own flags, its safer.
2786 + unset LDFLAGS CFLAGS CXXFLAGS ASFLAGS KERNEL
2787 +}
2788 +
2789 +src_configure() {
2790 + if use build-kernel ; then
2791 + tc-export CC
2792 + cd "${S}/$(tc-arch-kernel)/conf" || die
2793 + config ${KERN_BUILD} || die
2794 + fi
2795 +}
2796 +
2797 +src_compile() {
2798 + if use build-kernel ; then
2799 + if has_version "<sys-freebsd/freebsd-ubin-10.0"; then
2800 + cd "${WORKDIR}"/usr.bin/bmake || die
2801 + CC=${CHOST}-gcc freebsd_src_compile
2802 + export BMAKE="${WORKDIR}/usr.bin/bmake/make"
2803 + fi
2804 + cd "${S}/$(tc-arch-kernel)/compile/${KERN_BUILD}" || die
2805 + freebsd_src_compile depend
2806 + freebsd_src_compile
2807 + else
2808 + einfo "Nothing to compile.."
2809 + fi
2810 +}
2811 +
2812 +src_install() {
2813 + if use build-kernel ; then
2814 + cd "${S}/$(tc-arch-kernel)/compile/${KERN_BUILD}" || die
2815 + freebsd_src_install
2816 + rm -rf "${S}/$(tc-arch-kernel)/compile/${KERN_BUILD}"
2817 + cd "${S}"
2818 + fi
2819 +
2820 + insinto "/usr/src/sys"
2821 + doins -r "${S}/".
2822 + if use zfs ; then
2823 + insinto "/usr/src/cddl"
2824 + doins -r "${WORKDIR}/cddl/".
2825 + fi
2826 +}
2827 +
2828 +pkg_preinst() {
2829 + if [[ -L "${ROOT}/usr/src/sys" ]]; then
2830 + einfo "/usr/src/sys is a symlink, removing it..."
2831 + rm -f "${ROOT}/usr/src/sys"
2832 + fi
2833 +
2834 + if use sparc-fbsd ; then
2835 + ewarn "WARNING: kldload currently causes kernel panics"
2836 + ewarn "on sparc64. This is probably a gcc-4.1 issue, but"
2837 + ewarn "we need gcc-4.1 to compile the kernel correctly :/"
2838 + ewarn "Please compile all modules you need into the kernel"
2839 + fi
2840 +
2841 + ewarn "If you want manual compile (not recommended), please don't forget the following step."
2842 + if ! use sparc-fbsd ; then
2843 + ewarn "export CC=clang"
2844 + ewarn "export CXX=clang++"
2845 + fi
2846 + if ! use zfs ; then
2847 + ewarn "export WITHOUT_CDDL="
2848 + ewarn "Note, Please set USE=zfs if you want to enable modules of CDDL license."
2849 + fi
2850 + if ! use dtrace && ! has_version '>=sys-freebsd/freebsd-cddl-9.2_beta1' ; then
2851 + ewarn "GENERIC config require sys-freebsd/freebsd-cddl. Please emerge it."
2852 + fi
2853 +}
2854
2855 diff --git a/sys-freebsd/freebsd-ubin/Manifest b/sys-freebsd/freebsd-ubin/Manifest
2856 index 18826f5..67bbfb2 100644
2857 --- a/sys-freebsd/freebsd-ubin/Manifest
2858 +++ b/sys-freebsd/freebsd-ubin/Manifest
2859 @@ -11,6 +11,7 @@ DIST freebsd-include-9.1.tar.bz2 146881 SHA256 861dce3f39e6806762b102361017cbe14
2860 DIST freebsd-lib-8.2.tar.bz2 3323878 SHA256 e3590c12794fcb5ba8eb7a1f58b497587cf19f9200b3254c194a793da3b5bfb0 SHA512 c059cfdd1099bb519b2a5c43fb7e7104c500ef8906229ed7eb9e420cb3a217cdaf8655e9e7a9f45cfadc5491f8115e0e738fd49251d9f0c3a83780845b09f007 WHIRLPOOL 95f98a372f44a89bc8ac3029ec065dbbfec338e6f889d057d75644bfcdfb9d27fdc0421d7e392cad5a823712b97f0857297ec3d321580254c63032c22b95792e
2861 DIST freebsd-lib-9.1.tar.bz2 3206685 SHA256 f31fa8107b4de711c548f6d0c1bb1f81d09f51bcc3b14a1e9e90bb0e7cc4a35d SHA512 40d0c36b6b889c404fa0e0afa38ba4e84a55bc88ffa2f98a70afbd7a32c4f32c158617ba770567d082a986d62c09b3ec8db3dc5ab853ee1c9bbe0b90bb82396e WHIRLPOOL 581878bf9c43184b043b4293409b85901c9ed1f9bd279e965414aca41ba50950848ebda3ee10a503a028135dfd2765e95a11acd4e62a11c528e104392bbbd8d0
2862 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
2863 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
2864 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
2865 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
2866 DIST freebsd-ubin-8.2.tar.bz2 1808012 SHA256 6b99554f3ad6ee052069b347eb6e6219b71598d7b222acb90a24cbfc805c7b68 SHA512 48d0103323e820c431aa4f62d3be40cb3b200fb62e3de01f36c88760395bf2ba3367c51f3fa72da4dbccc2812176a051a12ca5cb7e84125c3e0fc78d4cab2c29 WHIRLPOOL ea8f3a29a37b42c2b5bcc0f2c343fa1538522157ef075363c94606a4620a590e9a03f856ce2494e3e727935b62431991d0aa9fde71de699e78b4fe225bdf1c2c
2867
2868 diff --git a/sys-freebsd/freebsd-ubin/files/freebsd-ubin-11.0-setXid.patch b/sys-freebsd/freebsd-ubin/files/freebsd-ubin-11.0-setXid.patch
2869 new file mode 100644
2870 index 00000000..946cc5b
2871 --- /dev/null
2872 +++ b/sys-freebsd/freebsd-ubin/files/freebsd-ubin-11.0-setXid.patch
2873 @@ -0,0 +1,147 @@
2874 +diff --git a/usr.bin/at/Makefile b/usr.bin/at/Makefile
2875 +index d199a85..dc5cafd 100644
2876 +--- a/usr.bin/at/Makefile
2877 ++++ b/usr.bin/at/Makefile
2878 +@@ -17,6 +17,8 @@ BINOWN= root
2879 + BINMODE= 4555
2880 + CLEANFILES+= at.1
2881 +
2882 ++LDFLAGS+=-Wl,-z,now
2883 ++
2884 + at.1: at.man
2885 + @${ECHO} Making ${.TARGET:T} from ${.ALLSRC:T}; \
2886 + sed -e \
2887 +diff --git a/usr.bin/chpass/Makefile b/usr.bin/chpass/Makefile
2888 +index 4427417..4f774a1 100644
2889 +--- a/usr.bin/chpass/Makefile
2890 ++++ b/usr.bin/chpass/Makefile
2891 +@@ -17,6 +17,8 @@ CFLAGS+= -DYP
2892 + #CFLAGS+=-DRESTRICT_FULLNAME_CHANGE
2893 + CFLAGS+=-I${.CURDIR}/../../usr.sbin/pwd_mkdb -I${.CURDIR}/../../lib/libc/gen -I.
2894 +
2895 ++LDFLAGS+=-Wl,-z,now
2896 ++
2897 + LIBADD= crypt util
2898 + .if ${MK_NIS} != "no"
2899 + LIBADD+= ypclnt
2900 +diff --git a/usr.bin/fstat/Makefile b/usr.bin/fstat/Makefile
2901 +index cd03a51..9a0fe6e 100644
2902 +--- a/usr.bin/fstat/Makefile
2903 ++++ b/usr.bin/fstat/Makefile
2904 +@@ -9,3 +9,5 @@ LIBADD= procstat
2905 + MAN1= fuser.1 fstat.1
2906 +
2907 + .include <bsd.prog.mk>
2908 ++LDFLAGS+=-Wl,-z,now
2909 ++
2910 +diff --git a/usr.bin/lock/Makefile b/usr.bin/lock/Makefile
2911 +index 07321f7..ed2c786 100644
2912 +--- a/usr.bin/lock/Makefile
2913 ++++ b/usr.bin/lock/Makefile
2914 +@@ -7,4 +7,6 @@ BINMODE=4555
2915 +
2916 + LIBADD= crypt
2917 +
2918 ++LDFLAGS+=-Wl,-z,now
2919 ++
2920 + .include <bsd.prog.mk>
2921 +diff --git a/usr.bin/login/Makefile b/usr.bin/login/Makefile
2922 +index 3499575..62a7356 100644
2923 +--- a/usr.bin/login/Makefile
2924 ++++ b/usr.bin/login/Makefile
2925 +@@ -16,6 +16,8 @@ CFLAGS+= -DUSE_BSM_AUDIT
2926 + LIBADD+= bsm
2927 + .endif
2928 +
2929 ++LDFLAGS+=-Wl,-z,now
2930 ++
2931 + .if ${MK_SETUID_LOGIN} != "no"
2932 + BINOWN= root
2933 + BINMODE=4555
2934 +diff --git a/usr.bin/netstat/Makefile b/usr.bin/netstat/Makefile
2935 +index 52cc3c7..11ebb2f 100644
2936 +--- a/usr.bin/netstat/Makefile
2937 ++++ b/usr.bin/netstat/Makefile
2938 +@@ -57,6 +57,8 @@ BINGRP= kmem
2939 + BINMODE=2555
2940 + LIBADD= kvm memstat xo util
2941 +
2942 ++LDFLAGS+=-Wl,-z,now
2943 ++
2944 + .if ${MK_NETGRAPH_SUPPORT} != "no"
2945 + SRCS+= netgraph.c
2946 + LIBADD+= netgraph
2947 +diff --git a/usr.bin/opieinfo/Makefile b/usr.bin/opieinfo/Makefile
2948 +index 3114a92..5c41213 100644
2949 +--- a/usr.bin/opieinfo/Makefile
2950 ++++ b/usr.bin/opieinfo/Makefile
2951 +@@ -12,6 +12,8 @@ WARNS?= 0
2952 +
2953 + LIBADD= opie
2954 +
2955 ++LDFLAGS+=-Wl,-z,now
2956 ++
2957 + BINOWN= root
2958 + BINMODE=4555
2959 + PRECIOUSPROG=
2960 +diff --git a/usr.bin/opiepasswd/Makefile b/usr.bin/opiepasswd/Makefile
2961 +index ae35b20..32ba59b 100644
2962 +--- a/usr.bin/opiepasswd/Makefile
2963 ++++ b/usr.bin/opiepasswd/Makefile
2964 +@@ -12,6 +12,8 @@ WARNS?= 0
2965 +
2966 + LIBADD= opie
2967 +
2968 ++LDFLAGS+=-Wl,-z,now
2969 ++
2970 + BINOWN= root
2971 + BINMODE=4555
2972 + PRECIOUSPROG=
2973 +diff --git a/usr.bin/passwd/Makefile b/usr.bin/passwd/Makefile
2974 +index 758be2d..ebde1a6 100644
2975 +--- a/usr.bin/passwd/Makefile
2976 ++++ b/usr.bin/passwd/Makefile
2977 +@@ -13,6 +13,8 @@ SYMLINKS = ${BINDIR}/passwd ${BINDIR}/yppasswd
2978 + MLINKS = passwd.1 yppasswd.1
2979 + .endif
2980 +
2981 ++LDFLAGS+=-Wl,-z,now
2982 ++
2983 + beforeinstall:
2984 + .for i in passwd yppasswd
2985 + [ ! -e ${DESTDIR}${BINDIR}/$i ] || \
2986 +diff --git a/usr.bin/su/Makefile b/usr.bin/su/Makefile
2987 +index b3dd829..26eaa63 100644
2988 +--- a/usr.bin/su/Makefile
2989 ++++ b/usr.bin/su/Makefile
2990 +@@ -10,6 +10,8 @@ WARNS?= 5
2991 + LIBADD= util pam
2992 +
2993 + .if ${MK_AUDIT} != "no"
2994 ++LDFLAGS+=-Wl,-z,now
2995 ++
2996 + CFLAGS+= -DUSE_BSM_AUDIT
2997 + LIBADD+= bsm
2998 + .endif
2999 +diff --git a/usr.bin/wall/Makefile b/usr.bin/wall/Makefile
3000 +index 0579add..571be8d 100644
3001 +--- a/usr.bin/wall/Makefile
3002 ++++ b/usr.bin/wall/Makefile
3003 +@@ -6,4 +6,6 @@ SRCS= ttymsg.c wall.c
3004 + BINGRP= tty
3005 + BINMODE=2555
3006 +
3007 ++LDFLAGS+=-Wl,-z,now
3008 ++
3009 + .include <bsd.prog.mk>
3010 +diff --git a/usr.bin/write/Makefile b/usr.bin/write/Makefile
3011 +index ba06110..ba6ce04 100644
3012 +--- a/usr.bin/write/Makefile
3013 ++++ b/usr.bin/write/Makefile
3014 +@@ -5,4 +5,6 @@ PROG= write
3015 + BINMODE=2555
3016 + BINGRP= tty
3017 +
3018 ++LDFLAGS+=-Wl,-z,now
3019 ++
3020 + .include <bsd.prog.mk>
3021
3022 diff --git a/sys-freebsd/freebsd-ubin/freebsd-ubin-11.0.ebuild b/sys-freebsd/freebsd-ubin/freebsd-ubin-11.0.ebuild
3023 new file mode 100644
3024 index 00000000..537aad0
3025 --- /dev/null
3026 +++ b/sys-freebsd/freebsd-ubin/freebsd-ubin-11.0.ebuild
3027 @@ -0,0 +1,209 @@
3028 +# Copyright 1999-2016 Gentoo Foundation
3029 +# Distributed under the terms of the GNU General Public License v2
3030 +# $Id$
3031 +
3032 +EAPI=5
3033 +
3034 +inherit bsdmk freebsd flag-o-matic pam multilib multibuild multilib-build
3035 +
3036 +DESCRIPTION="FreeBSD's base system source for /usr/bin"
3037 +SLOT="0"
3038 +IUSE="ar atm audit bluetooth ipv6 kerberos netware nis ssl usb build zfs"
3039 +LICENSE="BSD zfs? ( CDDL )"
3040 +
3041 +if [[ ${PV} != *9999* ]]; then
3042 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
3043 + SRC_URI="${SRC_URI}
3044 + $(freebsd_upstream_patches)"
3045 +fi
3046 +
3047 +EXTRACTONLY="
3048 + usr.bin/
3049 + contrib/
3050 + lib/
3051 + etc/
3052 + bin/
3053 + include/
3054 +"
3055 +
3056 +RDEPEND="=sys-freebsd/freebsd-lib-${RV}*[usb?,bluetooth?,${MULTILIB_USEDEP}]
3057 + ssl? ( dev-libs/openssl:0= )
3058 + kerberos? ( virtual/krb5 )
3059 + ar? ( >=app-arch/libarchive-3 )
3060 + virtual/pam
3061 + sys-libs/zlib
3062 + >=sys-libs/ncurses-5.9:0=
3063 + !sys-process/fuser-bsd
3064 + !dev-util/csup
3065 + !dev-libs/libiconv
3066 + !sys-freebsd/freebsd-contrib"
3067 +
3068 +DEPEND="${RDEPEND}
3069 + sys-devel/flex
3070 + !build? ( =sys-freebsd/freebsd-sources-${RV}* )
3071 + =sys-freebsd/freebsd-sbin-${RV}*
3072 + =sys-freebsd/freebsd-mk-defs-${RV}*"
3073 +
3074 +RDEPEND="${RDEPEND}
3075 + >=sys-auth/pambase-20080219.1
3076 + sys-process/cronbase"
3077 +
3078 +S="${WORKDIR}/usr.bin"
3079 +
3080 +PATCHES=( "${FILESDIR}/${PN}-6.0-bsdcmp.patch"
3081 + "${FILESDIR}/${PN}-9.0-fixmakefiles.patch"
3082 + "${FILESDIR}/${PN}-11.0-setXid.patch"
3083 + "${FILESDIR}/${PN}-lint-stdarg.patch"
3084 + "${FILESDIR}/${PN}-9.1-bsdar.patch"
3085 + "${FILESDIR}/${PN}-9.1-minigzip.patch"
3086 + "${FILESDIR}/${PN}-10.0-dtc-gcc46.patch"
3087 + "${FILESDIR}/${PN}-10.2-talk-workaround.patch"
3088 + "${FILESDIR}/${PN}-10.2-bsdxml.patch" )
3089 +
3090 +# Here we remove some sources we don't need because they are already
3091 +# provided by portage's packages or similar. In order:
3092 +# - Archiving tools, provided by their own ebuilds
3093 +# - ncurses stuff
3094 +# - less stuff
3095 +# - bind utils
3096 +# - rsh stuff
3097 +# - binutils gprof
3098 +# - dc stuff
3099 +# and the rest are misc utils we already provide somewhere else.
3100 +REMOVE_SUBDIRS="bzip2 bzip2recover tar cpio
3101 + gzip gprof
3102 + lzmainfo xz xzdec
3103 + unzip
3104 + tput tset tabs
3105 + less lessecho lesskey
3106 + hesinfo host
3107 + rsh rlogin rusers rwho ruptime
3108 + compile_et lex vi smbutil file vacation nc ftp telnet
3109 + c99 c89
3110 + bc dc
3111 + whois tftp man
3112 + addr2line bsdcat cxxfilt cxxfilt elfcopy nm readelf sdiff size soelim strings"
3113 +
3114 +pkg_setup() {
3115 + # Add the required source files.
3116 + use zfs && EXTRACTONLY+="cddl/ "
3117 + use build && EXTRACTONLY+="sys/ "
3118 +
3119 + use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= "
3120 + use audit || mymakeopts="${mymakeopts} WITHOUT_AUDIT= "
3121 + use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= "
3122 + use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6= WITHOUT_INET6_SUPPORT= "
3123 + use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS_SUPPORT= "
3124 + use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= "
3125 + use nis || mymakeopts="${mymakeopts} WITHOUT_NIS= "
3126 + use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= "
3127 + use usb || mymakeopts="${mymakeopts} WITHOUT_USB= "
3128 + use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= "
3129 + mymakeopts="${mymakeopts} WITHOUT_CLANG= WITHOUT_LZMA_SUPPORT= WITHOUT_SVN= WITHOUT_SVNLITE= WITHOUT_OPENSSH= WITHOUT_LDNS_UTILS= WITHOUT_MANDOCDB= "
3130 +}
3131 +
3132 +pkg_preinst() {
3133 + # bison installs a /usr/bin/yacc symlink ...
3134 + # we need to remove it to avoid triggering
3135 + # collision-protect errors
3136 + if [[ -L ${ROOT}/usr/bin/yacc ]] ; then
3137 + rm -f "${ROOT}"/usr/bin/yacc
3138 + fi
3139 +}
3140 +
3141 +src_prepare() {
3142 + if [[ ! -e "${WORKDIR}/sys" ]]; then
3143 + use build || ln -s "/usr/src/sys" "${WORKDIR}/sys"
3144 + fi
3145 +
3146 + # Rename manpage for renamed cmp
3147 + mv "${S}"/cmp/cmp.1 "${S}"/cmp/bsdcmp.1 || die
3148 + # Rename manpage for renamed ar
3149 + mv "${S}"/ar/ar.1 "${S}"/ar/freebsd-ar.1 || die
3150 + # Fix whereis(1) manpath search.
3151 + sed -i -e 's:"manpath -q":"manpath":' "${S}/whereis/pathnames.h"
3152 +
3153 + # Build a dynamic make
3154 + sed -i -e '/^NO_SHARED/ s/^/#/' "${S}"/bmake/Makefile.inc || die
3155 +
3156 + # Disable it here otherwise our patch wont apply
3157 + use ar || dummy_mk ar
3158 +
3159 + # Preparing to build xlint
3160 + export LINT=xlint
3161 +}
3162 +
3163 +setup_multilib_vars() {
3164 + if ! multilib_is_native_abi ; then
3165 + cd "${WORKDIR}/usr.bin/ldd" || die
3166 + export mymakeopts="${mymakeopts} PROG=ldd32 WITHOUT_MAN="
3167 + else
3168 + cd "${S}" || die
3169 + fi
3170 + "$@"
3171 +}
3172 +
3173 +src_compile() {
3174 + # Preparing to build addr2line, elfcopy, m4
3175 + for dir in libelftc libpe libopenbsd ; do
3176 + cd "${WORKDIR}/lib/${dir}" || die
3177 + freebsd_src_compile -j1
3178 + done
3179 +
3180 + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) )
3181 + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper setup_multilib_vars freebsd_src_compile -j1
3182 +}
3183 +
3184 +src_install() {
3185 + cd "${S}"/calendar/calendars || die
3186 + for dir in $(find . -type d ! -name "." ) ; do
3187 + dodir /usr/share/calendar/"$(basename ${dir})"
3188 + done
3189 +
3190 + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) )
3191 + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper setup_multilib_vars freebsd_src_install
3192 +
3193 + # baselayout requires these in /bin
3194 + dodir /bin
3195 + for bin in sed printf ; do
3196 + mv "${D}/usr/bin/${bin}" "${D}/bin/" || die "mv ${bin} failed"
3197 + dosym /bin/${bin} /usr/bin/${bin} || die "dosym ${bin} failed"
3198 + done
3199 +
3200 + for pamdfile in login passwd su; do
3201 + newpamd "${FILESDIR}/${pamdfile}.1.pamd" ${pamdfile} || die
3202 + done
3203 +
3204 + cd "${WORKDIR}/etc" || die
3205 + insinto /etc
3206 + doins remote phones opieaccess fbtab || die
3207 +
3208 + exeinto /etc/cron.daily
3209 + newexe "${FILESDIR}/locate-updatedb-cron" locate.updatedb || die
3210 +
3211 + # tip requires /var/spool/lock/, bug #200700
3212 + keepdir /var/spool/lock
3213 +
3214 + # create locate database #472468
3215 + local f=/var/db/locate.database
3216 + mkdir "${ED}${f%/*}" || die
3217 + touch "${ED}${f}" || die
3218 + fowners nobody:nobody ${f}
3219 +}
3220 +
3221 +pkg_postinst() {
3222 + # We need to ensure that login.conf.db is up-to-date.
3223 + if [[ -e "${ROOT}"etc/login.conf ]] ; then
3224 + einfo "Updating ${ROOT}etc/login.conf.db"
3225 + "${ROOT}"usr/bin/cap_mkdb -f "${ROOT}"etc/login.conf "${ROOT}"etc/login.conf
3226 + elog "Remember to run cap_mkdb /etc/login.conf after making changes to it"
3227 + fi
3228 +}
3229 +
3230 +pkg_postrm() {
3231 + # and if we uninstall yacc but keep bison,
3232 + # lets restore the /usr/bin/yacc symlink
3233 + if [[ ! -e ${ROOT}/usr/bin/yacc ]] && [[ -e ${ROOT}/usr/bin/yacc.bison ]] ; then
3234 + ln -s yacc.bison "${ROOT}"/usr/bin/yacc
3235 + fi
3236 +}
3237
3238 diff --git a/sys-freebsd/freebsd-usbin/Manifest b/sys-freebsd/freebsd-usbin/Manifest
3239 index 455eb71..a566584 100644
3240 --- a/sys-freebsd/freebsd-usbin/Manifest
3241 +++ b/sys-freebsd/freebsd-usbin/Manifest
3242 @@ -13,6 +13,7 @@ DIST freebsd-libexec-9.1.tar.bz2 304592 SHA256 71e6e9e41328c2148c54b81ad9b59f912
3243 DIST freebsd-sbin-8.2.tar.bz2 1211665 SHA256 8b7e21a66b4696e8763d29b8b02b2d35f29fc51820a194d1e469e7cace84c527 SHA512 c6643c29ab62344c98d8991708798730ee1c17e6478071718beeaa79788300a1f4ed2e6aeb8e39e3c216877d4ed2ac85b2a9531d534f1ac5125a508927898959 WHIRLPOOL 2a21cd0f15f95d66718031680ac87f1fe73f1e1b03cb012e1db1dd1bd2fe2bb7897457a8ba2f5a28c8806775611dca542cbadec16566c47ab9efa673e2cb53f3
3244 DIST freebsd-sbin-9.1.tar.bz2 1273913 SHA256 45008b0733b232ef03707ef5fa3e5c889e3b3728393d736bd9a869ea83be6447 SHA512 9f186602b7de96f268c352ca386986652fddf5570e7eca1afa8c0d2bdc83b57df1198efe47f36dd5c7a6abf4f9c935f1c8207a4a12a6b2153bd6c3c6292719dc WHIRLPOOL 20920dfa9607a0ce854319cef29bbd77fb1b31f6f6cfd5ac60cbd678169e43929e215743fe636d0c224443f3e6149a8f07c292d647f7f901592795ac292699f9
3245 DIST freebsd-src-10.3.tar.xz 126900216 SHA256 f50763dcac88e9b7ec616b77d537bf338f470350e2c85e0cc7decfcc8372b54d SHA512 a0c95fc4bbc5ad7599d0a83651a497e85cd85a5c433e5e175c57480b466c9eb5aa0390804d6336da8301c75ad499484399d39b8f7efbcfda8cafb09b1aa12d8f WHIRLPOOL bf5320bc506fb73a63d0fb324b60667a196ca2fef5d0215637a657c613f2052d76d002deb205e258f6d4e2aaea15490b26679e59a102606a34b58ab1f6b755ad
3246 +DIST freebsd-src-11.0.tar.xz 140252356 SHA256 0725a7f1d3e8985f4b2e31a2ad714334463a5016b203073a8fc196649f3d5a27 SHA512 ee1271bb38ee46fbab3d49b33f5b5afd76f9402b2e792581d63f02272df8e2a4011fac97ad550434f0c2fc5fe241940276629bde55e75f8638896a81339870cd WHIRLPOOL e1cda77189990c1d2187ab2d9e842ff3c619d8235f1ade56819fadc52f680a871de17cf05f8119614557c615ad19d41d1b6080c4b3768e7252889546b865d827
3247 DIST freebsd-sys-8.2.tar.bz2 25835329 SHA256 0c6c7b61aae94db2931f985d5899f3bca78fc8ffab6b598fbaa158142d676f16 SHA512 6ea4516a5c52e25c4f993f7acb875463a5caea93dbdf250c5d48eee95fff226956e9f030cab7e341b5e6a132325bc3dbf93dcb4b1185acb011918e50b1a22be3 WHIRLPOOL 870deeff877c6b9fc812a4260e4fdbb6715a5dc2065cab3bfbf2a42d876f6654703ccb124275a4e2c410cef48f3db02b63cc76059eccf9cf90244826f35b7a15
3248 DIST freebsd-sys-9.1.tar.bz2 32588103 SHA256 b93a7ac8334ac16cc9f60665048e5ef812c0a6c62f10d0b0a674aec3f56516a8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d WHIRLPOOL c8348344dfb14bad64bd3a78ee615ddd29203175b292233254f8ba175e7a3fb7218af6f95f7b4dbf394c0354bafe9d8bb0c21cdf0ceaeb697214964b280469b3
3249 DIST freebsd-ubin-8.2.tar.bz2 1808012 SHA256 6b99554f3ad6ee052069b347eb6e6219b71598d7b222acb90a24cbfc805c7b68 SHA512 48d0103323e820c431aa4f62d3be40cb3b200fb62e3de01f36c88760395bf2ba3367c51f3fa72da4dbccc2812176a051a12ca5cb7e84125c3e0fc78d4cab2c29 WHIRLPOOL ea8f3a29a37b42c2b5bcc0f2c343fa1538522157ef075363c94606a4620a590e9a03f856ce2494e3e727935b62431991d0aa9fde71de699e78b4fe225bdf1c2c
3250
3251 diff --git a/sys-freebsd/freebsd-usbin/files/freebsd-usbin-11.0-workaround.patch b/sys-freebsd/freebsd-usbin/files/freebsd-usbin-11.0-workaround.patch
3252 new file mode 100644
3253 index 00000000..04ba75a
3254 --- /dev/null
3255 +++ b/sys-freebsd/freebsd-usbin/files/freebsd-usbin-11.0-workaround.patch
3256 @@ -0,0 +1,13 @@
3257 +diff --git a/usr.sbin/nmtree/Makefile b/usr.sbin/nmtree/Makefile
3258 +index 033002c..d198f10 100644
3259 +--- a/usr.sbin/nmtree/Makefile
3260 ++++ b/usr.sbin/nmtree/Makefile
3261 +@@ -5,7 +5,7 @@
3262 + .PATH: ${.CURDIR}/../../contrib/mtree
3263 +
3264 + PROG= mtree
3265 +-MAN= mtree.5 mtree.8
3266 ++MAN= mtree.8
3267 + SRCS= compare.c crc.c create.c excludes.c getid.c misc.c mtree.c \
3268 + only.c spec.c specspec.c verify.c
3269 +
3270
3271 diff --git a/sys-freebsd/freebsd-usbin/freebsd-usbin-11.0.ebuild b/sys-freebsd/freebsd-usbin/freebsd-usbin-11.0.ebuild
3272 new file mode 100644
3273 index 00000000..31ca603
3274 --- /dev/null
3275 +++ b/sys-freebsd/freebsd-usbin/freebsd-usbin-11.0.ebuild
3276 @@ -0,0 +1,186 @@
3277 +# Copyright 1999-2016 Gentoo Foundation
3278 +# Distributed under the terms of the GNU General Public License v2
3279 +# $Id$
3280 +
3281 +EAPI=5
3282 +
3283 +inherit bsdmk freebsd flag-o-matic eutils
3284 +
3285 +DESCRIPTION="FreeBSD /usr/sbin tools"
3286 +SLOT="0"
3287 +LICENSE="BSD zfs? ( CDDL )"
3288 +
3289 +if [[ ${PV} != *9999* ]]; then
3290 + KEYWORDS="~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
3291 + SRC_URI="${SRC_URI}
3292 + $(freebsd_upstream_patches)"
3293 +fi
3294 +
3295 +EXTRACTONLY="
3296 + usr.sbin/
3297 + contrib/
3298 + usr.bin/
3299 + lib/
3300 + sbin/
3301 + etc/
3302 + gnu/
3303 +"
3304 +
3305 +RDEPEND="=sys-freebsd/freebsd-lib-${RV}*[usb?,bluetooth?,netware?]
3306 + =sys-freebsd/freebsd-libexec-${RV}*
3307 + build? ( sys-apps/baselayout )
3308 + ssl? ( dev-libs/openssl:0 )
3309 + >=app-arch/libarchive-3
3310 + sys-apps/tcp-wrappers
3311 + dev-util/dialog
3312 + >=dev-libs/libedit-20120311.3.0-r1
3313 + net-libs/libpcap
3314 + kerberos? ( app-crypt/heimdal )"
3315 +DEPEND="${RDEPEND}
3316 + =sys-freebsd/freebsd-mk-defs-${RV}*
3317 + =sys-freebsd/freebsd-ubin-${RV}*
3318 + zfs? ( =sys-freebsd/freebsd-cddl-${RV}* )
3319 + !build? ( =sys-freebsd/freebsd-sources-${RV}* )
3320 + sys-apps/texinfo
3321 + sys-devel/flex"
3322 +
3323 +S="${WORKDIR}/usr.sbin"
3324 +
3325 +IUSE="acpi atm audit bluetooth floppy ipv6 kerberos minimal netware nis pam ssl usb build zfs"
3326 +
3327 +pkg_setup() {
3328 + # Add the required source files.
3329 + use nis && EXTRACTONLY+="libexec/ "
3330 + use build && EXTRACTONLY+="sys/ include/ "
3331 + use zfs && EXTRACTONLY+="cddl/ "
3332 +
3333 + # Release crunch is something like minimal. It seems to remove everything
3334 + # which is not needed to work.
3335 + use minimal && mymakeopts="${mymakeopts} RELEASE_CRUNCH= "
3336 +
3337 + use acpi || mymakeopts="${mymakeopts} WITHOUT_ACPI= "
3338 + use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= "
3339 + use audit || mymakeopts="${mymakeopts} WITHOUT_AUDIT= "
3340 + use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= "
3341 + use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6= WITHOUT_INET6_SUPPORT= "
3342 + use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= "
3343 + use nis || mymakeopts="${mymakeopts} WITHOUT_NIS= "
3344 + use pam || mymakeopts="${mymakeopts} WITHOUT_PAM_SUPPORT= "
3345 + use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= "
3346 + use usb || mymakeopts="${mymakeopts} WITHOUT_USB= "
3347 + use floppy || mymakeopts="${mymakeopts} WITHOUT_FLOPPY= "
3348 + use kerberos || mymakeopts="${mymakeopts} WITHOUT_GSSAPI= "
3349 + use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= "
3350 +
3351 + mymakeopts="${mymakeopts} WITHOUT_PF= WITHOUT_LPR= WITHOUT_SENDMAIL= WITHOUT_AUTHPF= WITHOUT_MAILWRAPPER= WITHOUT_UNBOUND= "
3352 +
3353 + append-flags $(test-flags -fno-strict-aliasing)
3354 +}
3355 +
3356 +PATCHES=(
3357 + "${FILESDIR}/${PN}-adduser.patch"
3358 + "${FILESDIR}/${PN}-9.0-newsyslog.patch"
3359 + "${FILESDIR}/${PN}-10.0-bsdxml2expat.patch"
3360 + "${FILESDIR}/${PN}-10.3-bsdxml2expat.patch"
3361 + "${FILESDIR}/${PN}-11.0-workaround.patch"
3362 + )
3363 +
3364 +REMOVE_SUBDIRS="
3365 + tcpdchk tcpdmatch
3366 + sendmail praliases editmap mailstats makemap
3367 + pc-sysinstall cron mailwrapper ntp bsnmpd
3368 + tcpdump ndp inetd
3369 + wpa/wpa_supplicant wpa/hostapd wpa/hostapd_cli wpa/wpa_cli wpa/wpa_passphrase
3370 + zic amd
3371 + pkg freebsd-update service sysrc bsdinstall"
3372 +
3373 +src_prepare() {
3374 + if ! use build; then
3375 + [[ ! -e "${WORKDIR}/sys" ]] && ln -s "/usr/src/sys" "${WORKDIR}/sys"
3376 + [[ ! -e "${WORKDIR}/include" ]] && ln -s "/usr/include" "${WORKDIR}/include"
3377 + else
3378 + dummy_mk mount_smbfs
3379 + fi
3380 +}
3381 +
3382 +src_compile() {
3383 + # Preparing to build nmtree
3384 + cd "${WORKDIR}/lib/libnetbsd" || die
3385 + freebsd_src_compile
3386 +
3387 + cd "${S}" || die
3388 + freebsd_src_compile
3389 +}
3390 +
3391 +src_install() {
3392 + # By creating these directories we avoid having to do a
3393 + # more complex hack
3394 + dodir /usr/share/doc
3395 + dodir /sbin
3396 + dodir /usr/libexec
3397 + dodir /usr/bin
3398 +
3399 + # FILESDIR is used by some makefiles which will install files
3400 + # in the wrong place, just put it in the doc directory.
3401 + freebsd_src_install DOCDIR=/usr/share/doc/${PF}
3402 +
3403 + # Most of these now come from openrc.
3404 + for util in iscsid nfs nfsuserd rpc.statd rpc.lockd; do
3405 + newinitd "${FILESDIR}/"${util}.initd ${util} || die
3406 + if [[ -e "${FILESDIR}"/${util}.confd ]]; then \
3407 + newconfd "${FILESDIR}"/${util}.confd ${util} || die
3408 + fi
3409 + done
3410 +
3411 + for class in daily monthly weekly; do
3412 + cat - > "${T}/periodic.${class}" <<EOS
3413 +#!/bin/sh
3414 +/usr/sbin/periodic ${class}
3415 +EOS
3416 + exeinto /etc/cron.${class}
3417 + newexe "${T}/periodic.${class}" periodic
3418 + done
3419 +
3420 + # Install the pw.conf file to let pw use Gentoo's skel location
3421 + insinto /etc
3422 + doins "${FILESDIR}/pw.conf" || die
3423 +
3424 + cd "${WORKDIR}/etc" || die
3425 + doins apmd.conf syslog.conf newsyslog.conf nscd.conf || die
3426 +
3427 + if use bluetooth; then
3428 + insinto /etc/bluetooth
3429 + doins bluetooth/* || die
3430 + rm -f "${D}"/etc/bluetooth/Makefile
3431 + fi
3432 +
3433 + cd "${S}"/ppp || die
3434 + insinto /etc/ppp
3435 + doins ppp.conf || die
3436 +
3437 + # Install the periodic stuff (needs probably to be ported in a more
3438 + # gentooish way)
3439 + cd "${WORKDIR}/etc/periodic" || die
3440 +
3441 + doperiodic daily daily/*.accounting
3442 + doperiodic monthly monthly/*.accounting
3443 +}
3444 +
3445 +pkg_postinst() {
3446 + # We need to run pwd_mkdb if key files are not present
3447 + # If they are, then there is no need to run pwd_mkdb
3448 + if [[ ! -e "${ROOT}etc/passwd" || ! -e "${ROOT}etc/pwd.db" || ! -e "${ROOT}etc/spwd.db" ]] ; then
3449 + if [[ -e "${ROOT}etc/master.passwd" ]] ; then
3450 + einfo "Generating passwd files from ${ROOT}etc/master.passwd"
3451 + "${ROOT}"usr/sbin/pwd_mkdb -p -d "${ROOT}etc" "${ROOT}etc/master.passwd"
3452 + else
3453 + eerror "${ROOT}etc/master.passwd does not exist!"
3454 + eerror "You will no be able to log into your system!"
3455 + fi
3456 + fi
3457 +
3458 + for logfile in messages security auth.log maillog lpd-errs xferlog cron \
3459 + debug.log slip.log ppp.log; do
3460 + [[ -f "${ROOT}/var/log/${logfile}" ]] || touch "${ROOT}/var/log/${logfile}"
3461 + done
3462 +}