From 99abbc5e5a6ecd3fc981b45646fd8cb5d320377b Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 24 Feb 2018 19:58:07 +0000 Subject: gentoo resync : 24.02.2018 --- sys-freebsd/Manifest.gz | Bin 3047 -> 3055 bytes sys-freebsd/freebsd-lib/Manifest | 3 +- .../files/freebsd-lib-11.1-elf-nhdr.patch | 10 + sys-freebsd/freebsd-lib/freebsd-lib-11.1-r1.ebuild | 709 +++++++++++++++++++++ sys-freebsd/freebsd-lib/freebsd-lib-11.1.ebuild | 708 -------------------- sys-freebsd/freebsd-usbin/Manifest | 13 - .../files/freebsd-usbin-9.1-bsdxml2expat.patch | 12 - .../files/freebsd-usbin-9.1-kldxref.patch | 30 - .../freebsd-usbin/freebsd-usbin-9.1-r1.ebuild | 170 ----- 9 files changed, 721 insertions(+), 934 deletions(-) create mode 100644 sys-freebsd/freebsd-lib/files/freebsd-lib-11.1-elf-nhdr.patch create mode 100644 sys-freebsd/freebsd-lib/freebsd-lib-11.1-r1.ebuild delete mode 100644 sys-freebsd/freebsd-lib/freebsd-lib-11.1.ebuild delete mode 100644 sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-bsdxml2expat.patch delete mode 100644 sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-kldxref.patch delete mode 100644 sys-freebsd/freebsd-usbin/freebsd-usbin-9.1-r1.ebuild (limited to 'sys-freebsd') diff --git a/sys-freebsd/Manifest.gz b/sys-freebsd/Manifest.gz index 7c348b8afec1..dd55a43c3b9b 100644 Binary files a/sys-freebsd/Manifest.gz and b/sys-freebsd/Manifest.gz differ diff --git a/sys-freebsd/freebsd-lib/Manifest b/sys-freebsd/freebsd-lib/Manifest index 25c5bd931da8..9b6df1b87356 100644 --- a/sys-freebsd/freebsd-lib/Manifest +++ b/sys-freebsd/freebsd-lib/Manifest @@ -3,6 +3,7 @@ AUX bootpd.initd 554 BLAKE2B 86c2128a8f17a1d8eb57ef935a6e5a2b04f5c8c6654ecf40b10 AUX freebsd-lib-11.0-bsdxml2expat.patch 1103 BLAKE2B 7dd06eca9f528b2cbd7741c6f977b3580eb6231395be376d0bcdbcc767d9ff9bb585eb2579d65e6ad851eb68c77ccb71af95e8aeef58fa2a757f559c07c7f79f SHA512 a0e9d99ff47ce813a98a5c1fd3605dd757ceb6c4f68e3784f1b48192c9f0966cbf1c769387a808ae4511f004b00242fc47f7fd3a2971e371de587cac6827533e AUX freebsd-lib-11.0-libproc-libcxx.patch 350 BLAKE2B 0b0a9886567b9c81c8159266eba2f5957d81b90b816e76b21cd2a5c90e9eeb008acda1f7d2338167d20ee8a4b57e45ddd92ab978dd472e0752bbc8c055332240 SHA512 c9ace882ac2fb2a077839a02a4307ce7df1dd0699cef081e6a99f12f9c2b443e4a4e4f85415a59d208859442dc665d7b9cae22de8d61f80ab8a5875d423c5795 AUX freebsd-lib-11.0-workaround.patch 295 BLAKE2B 3e0fa9e7c981caeb11c75e5c7ccfef597a6129c0ea098f2d6945aac4439cfc9f937463b989078f4148e995efeee28cfc81de77e8a1acd7da9a3d913c5dfe82e5 SHA512 5c7559dc1876e833f440bc85e23e601eaa5dd26484b1905a5a59e29345f83438208770671c248b4dfb5138c4dded1f08234c77070afadb5c6b54e2b6dc35e24a +AUX freebsd-lib-11.1-elf-nhdr.patch 287 BLAKE2B 76f5c3b448ceb62b67eb5973201e59b61dc1fa5e3f06d3cec28377b803421f99c207f93d9b1d3963a3b6a3dbfa1132bab1637ea5b1986cad9f85db7b2ae786a7 SHA512 24adf537a277e5bb10e3701cdf37bf9be69b8fe57b88b947b04a57bdcd8e26f67e912ea812eccc8ba88df71076a9c4edeec7f709808d5835b44c210e905784c5 AUX freebsd-lib-11.1-liblink.patch 4233 BLAKE2B e088abc8f738475e09793cf59cb41257e2143a8daf7dbbdeb81190aec95e6d15b800862033353e556d87f757be43693e6b0895a6900fd58fff580ef8e6f1279a SHA512 23a875fa84685c7a98ddb08b1bcf831613239a6079c1711362bbbd19f27b67e61eb203bafc48c9ad06b9344258005e4d04756d4f8caba7c9545f3f86dcb52830 AUX freebsd-lib-6.0-flex-2.5.31.patch 421 BLAKE2B df851549b6978ab7b59585fbaec7c3bcea19f8eb6b1a2882343618c21ef2533fb8a56f9c8a362b7c188c97e5d0091b02288a457fe114b8e2e6dbe4b69bfad62d SHA512 c16a99b85e7908e77915796245741cbfcfb30ab1f4f0a8d565c28256b25d1532209ed27328d8b1571f61677251830f1fb6bbec17a8104686f56afd87f3226dec AUX freebsd-lib-6.0-pmc.patch 338 BLAKE2B 8c587f716fba0237e114af0c1860493c2aff046447f4469ba813a67e44779caa58f5b45108dc12634b7303401725006bed3b254459993972894a242737bb08bf SHA512 33187ec853ddf0c39680af60b669e60d3e213eba20a2e1ba995c991f04c053c5adcc5169b92c5d1d4cfbc7e03b72af2df4a5349361b41c56ca4a9b91e81bb327 @@ -40,6 +41,6 @@ DIST freebsd-libexec-9.1.tar.bz2 304592 BLAKE2B 994543ac910e4703d36682f6c0550596 DIST freebsd-src-11.1.tar.xz 147661560 BLAKE2B a9e6ba9d0e12c8b56ac58575d5f02931edbb6a3545d9dccae78810d2d0470a29b29dd7f724b03b8afafbca23717a71346e4cfbd3530e0f40118a23609c3f414e SHA512 b97707ec7a601ca6bcb682c45f6d94a38484301ac24630d7285eff6f88b027ce6900c93fc62f8ce36e0cf32c91f73a9d1c999db397b7f8782fd74a8551a03aca DIST freebsd-sys-9.1.tar.bz2 32588103 BLAKE2B 7f94a4735c6a17b39a86fa0fda0682924b18e4b466dc6319a5df889522aaeaffaa87e1b76582c48ae034df8c20169c8cea93bbd3d6e7abd0526716686f88dfe8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d DIST freebsd-usbin-9.1.tar.bz2 2670916 BLAKE2B 353c7e641c0cccf25b99cb454368bd3001cd6b85a15956b1ee2de1ab240c420602e04bf6d0389aca0bdd4f7d1206a6848516e58a17eda4881d849f078b71a139 SHA512 21c234312f70eb35cd2926519efc1f61592892f5d0940786dbeb959c3c5ec7819a51ae95c6e8a1a06aa01f669350fe0fd3dd7c4ec8a84dd6b90f24cb192356ca -EBUILD freebsd-lib-11.1.ebuild 21712 BLAKE2B e9d77514b6c9e1460dbf2f2c57a595c3d1c1b0a5617293e59b7d9a05b8b07a82b1514711915a9ffd49c6512421fc09c4b1c7516709cfb09f3cc1724cd9c4c8a2 SHA512 6906d49aa12d36ef13e713929d21d7d77b91c4c2ef0e0a1e9096514e6400566471f67e90d70a16c0e490755ff742cb449daa20052e57af767fcaf23c30fc757f +EBUILD freebsd-lib-11.1-r1.ebuild 21760 BLAKE2B 832e326a1d0610a57c6ada4c656f34f84d1b2bc0186328ce9122a800dbf2cc5ed701b2319ea32a762dab8089c396a166bbe6791d825a683a8fb22c3f13dba6bc SHA512 b99e3a42d48d1971a5a1429d0ec0ded0c60f7ef99ca52a072b93c8e55e12bd7eb54500816ca2c3ef30e06a4c915649f00ffbed5b82e9897cdcd9c9efaba38218 EBUILD freebsd-lib-9.1-r11.ebuild 18765 BLAKE2B 87d24b46d75ebc562cfabbb86011dbeba01c5a0cdbf60b1b0211b8baa11b34194cb8798873faee80b790d508c02df6bec0717d11be10d53e607eb03f79f5d030 SHA512 612088ffd0f9c166fcc85fb13a04dbb92a9d08bb427417844f9f731f405660ac153c15a92888a20af466fbdcd38355362e9710089a29937eb6539ac8c4e23e62 MISC metadata.xml 500 BLAKE2B b1e29ff9a6046d5f757c2eba85d20a8941d1f295be8dc9d3c02515193bc879020cd7760830b8a5cbaebbd9e691623dee6413f50dd321b09b28e108ca5ad99e9f SHA512 a164ccc254879d798007a4fb1db376b0dd807b3b6ef628c7f65ff05560d92d742f315226fe4935eb8b142d6937d6cfb01f515d21664f171e94f1549b40815470 diff --git a/sys-freebsd/freebsd-lib/files/freebsd-lib-11.1-elf-nhdr.patch b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.1-elf-nhdr.patch new file mode 100644 index 000000000000..a00df5f66f12 --- /dev/null +++ b/sys-freebsd/freebsd-lib/files/freebsd-lib-11.1-elf-nhdr.patch @@ -0,0 +1,10 @@ +--- a/sys/sys/elf_common.h 2018/01/18 20:45:41 328136 ++++ b/sys/sys/elf_common.h 2018/01/18 21:19:57 328137 +@@ -51,6 +51,7 @@ + u_int32_t n_descsz; /* Length of descriptor. */ + u_int32_t n_type; /* Type of this note. */ + } Elf_Note; ++typedef Elf_Note Elf_Nhdr; + + /* + * Option kinds. diff --git a/sys-freebsd/freebsd-lib/freebsd-lib-11.1-r1.ebuild b/sys-freebsd/freebsd-lib/freebsd-lib-11.1-r1.ebuild new file mode 100644 index 000000000000..e28f2420c1f1 --- /dev/null +++ b/sys-freebsd/freebsd-lib/freebsd-lib-11.1-r1.ebuild @@ -0,0 +1,709 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +inherit bsdmk freebsd flag-o-matic multilib toolchain-funcs eutils multibuild multilib-build + +DESCRIPTION="FreeBSD's base system libraries" +SLOT="0" +LICENSE="BSD GPL-2 zfs? ( CDDL )" + +# Security Advisory and Errata patches. +# UPSTREAM_PATCHES=() + +# Crypto is needed to have an internal OpenSSL header +# sys is needed for libalias, probably we can just extract that instead of +# extracting the whole tarball +if [[ ${PV} != *9999* ]]; then + KEYWORDS="~amd64-fbsd ~x86-fbsd" + SRC_URI="${SRC_URI} + $(freebsd_upstream_patches)" +fi + +EXTRACTONLY=" + lib/ + contrib/ + crypto/ + libexec/ + etc/ + include/ + usr.bin/ + usr.sbin/ + gnu/ + secure/ +" + +if [ "${CATEGORY#*cross-}" = "${CATEGORY}" ]; then + RDEPEND="ssl? ( dev-libs/openssl:0= ) + hesiod? ( net-dns/hesiod ) + kerberos? ( app-crypt/heimdal ) + pam? ( virtual/pam ) + usb? ( !dev-libs/libusb ) + zfs? ( =sys-freebsd/freebsd-cddl-${RV}* ) + >=dev-libs/expat-2.0.1 + >=dev-util/dialog-1.2.20150225 + !sys-freebsd/freebsd-libexec + !sys-libs/libutempter + !dev-libs/libelf + !dev-libs/libexecinfo + !dev-libs/libiconv + !sys-freebsd/freebsd-headers" + DEPEND="${RDEPEND} + >=sys-devel/flex-2.5.31-r2 + =sys-freebsd/freebsd-sources-${RV}*" + RDEPEND="${RDEPEND} + =sys-freebsd/freebsd-share-${RV}* + xinetd? ( sys-apps/xinetd ) + >=virtual/libiconv-0-r2" +else + EXTRACTONLY+="sys/ " +fi + +DEPEND="${DEPEND} + userland_GNU? ( sys-apps/mtree ) + =sys-freebsd/freebsd-mk-defs-${RV}*" + +S="${WORKDIR}/lib" + +export CTARGET=${CTARGET:-${CHOST}} +if [ "${CTARGET}" = "${CHOST}" -a "${CATEGORY#*cross-}" != "${CATEGORY}" ]; then + export CTARGET=${CATEGORY/cross-} +fi + +IUSE="atm bluetooth ssl hesiod ipv6 kerberos usb netware + build headers-only zfs pam xinetd + userland_GNU userland_BSD" + +QA_DT_NEEDED="lib/libc.so.7 usr/lib32/libc.so.7" + +pkg_setup() { + # Add the required source files. + use build && EXTRACTONLY+="sys/ " + use zfs && EXTRACTONLY+="cddl/ " + + [ -c /dev/zero ] || \ + die "You forgot to mount /dev; the compiled libc would break." + + if ! use ssl && use kerberos; then + eerror "If you want kerberos support you need to enable ssl support, too." + fi + + use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= " + use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= " + use hesiod || mymakeopts="${mymakeopts} WITHOUT_HESIOD= " + use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6_SUPPORT= " + use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS_SUPPORT= WITHOUT_GSSAPI= " + use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= " + use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= " + use usb || mymakeopts="${mymakeopts} WITHOUT_USB= " + use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= " + + mymakeopts="${mymakeopts} WITHOUT_SENDMAIL= WITHOUT_CLANG= WITHOUT_LIBCPLUSPLUS= WITHOUT_LDNS= WITHOUT_UNBOUND= WITHOUT_BSNMP= " + + if [ "${CTARGET}" != "${CHOST}" ]; then + mymakeopts="${mymakeopts} MACHINE=$(tc-arch-kernel ${CTARGET})" + mymakeopts="${mymakeopts} MACHINE_ARCH=$(tc-arch-kernel ${CTARGET})" + fi + + # Taken from freebsd-libexec. + use pam || mymakeopts="${mymakeopts} WITHOUT_PAM_SUPPORT= " + if has_version " /dev/null | grep -q GNU; then + sed -i.bak -e 's:${INSTALL} -C:${INSTALL}:' "${WORKDIR}/include/Makefile" + fi + + # libsysdecode requires the latest headers. + need_bootstrap && \ + sed -i "s:\${DESTDIR}\${INCLUDEDIR}:${WORKDIR}/include_proper_${ABI}:g" "${S}/libsysdecode/Makefile" + + # Taken from freebsd-libexec. + cd "${WORKDIR}/libexec" + dummy_mk smrsh mail.local tcpd telnetd rshd rlogind ftpd + # The old version of yacc doesn't support YFLAGS="-i". + if has_version " "${WORKDIR}/bootstrap_libc_${ABI}/libc.so" || die +} + +bootstrap_libgcc() { + bootstrap_lib "lib/libcompiler_rt" + cd "${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libcompiler_rt" || die + ln -s libcompiler_rt.a libgcc.a || die + + bootstrap_libc + bootstrap_lib "gnu/lib/libgcc" +} + +bootstrap_libthr() { + bootstrap_lib "lib/libthr" + cd "${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libthr" || die + ln -s libthr.so libpthread.so +} + +# What to build for a cross-compiler. +# We also need the csu but this has to be handled separately. +CROSS_SUBDIRS="lib/libc lib/msun gnu/lib/libssp/libssp_nonshared lib/libthr lib/libutil lib/librt lib/libc_nonshared lib/libcompiler_rt" + +# What to build for non-default ABIs. +NON_NATIVE_SUBDIRS="${CROSS_SUBDIRS} gnu/lib/csu gnu/lib/libgcc lib/libmd lib/libcrypt lib/libsbuf lib/libcam lib/libelf lib/libiconv_modules" + +# Subdirs for a native build: +NATIVE_SUBDIRS="lib gnu/lib/libssp/libssp_nonshared gnu/lib/libregex gnu/lib/csu gnu/lib/libgcc lib/libiconv_modules" + +# Is my $ABI native ? +is_native_abi() { + is_crosscompile && return 1 + multilib_is_native_abi +} + +# Do we need to bootstrap the csu and libssp_nonshared? +need_bootstrap() { + 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}" +} + +# Get the subdirs we are building. +get_subdirs() { + local ret="" + if is_native_abi ; then + # If we are building for the native ABI, build everything + ret="${NATIVE_SUBDIRS}" + elif is_crosscompile ; then + # With a cross-compiler we only build the very core parts. + ret="${CROSS_SUBDIRS}" + if [ "${EBUILD_PHASE}" = "install" ]; then + # Add the csu dir first when installing. We treat it separately for + # compiling. + ret="$(get_csudir $(tc-arch-kernel ${CTARGET})) ${ret}" + fi + else + # For the non-native ABIs we only build the csu parts and very core + # libraries for now. + ret="${NON_NATIVE_SUBDIRS} $(get_csudir $(tc-arch-kernel ${CHOST}))" + fi + echo "${ret}" +} + +# Bootstrap the core libraries and setup the flags so that the other parts can +# build against it. +do_bootstrap() { + einfo "Bootstrapping on ${CHOST} for ${CTARGET}" + if ! is_crosscompile ; then + # Pre-install headers, but not when building a cross-compiler since we + # assume they have been installed in the previous pass. + einfo "Pre-installing includes in include_proper_${ABI}" + mkdir "${WORKDIR}/include_proper_${ABI}" || die + CTARGET="${CHOST}" install_includes "/include_proper_${ABI}" + CFLAGS="${CFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}" + [[ $(tc-getCXX) = *clang++* ]] && CXXFLAGS="${CXXFLAGS} -isystem /usr/include/c++/v1" + CXXFLAGS="${CXXFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}" + mymakeopts="${mymakeopts} RPCDIR=${WORKDIR}/include_proper_${ABI}/rpcsvc" + fi + bootstrap_csu + bootstrap_libssp_nonshared + if is_crosscompile ; then + bootstrap_lib "lib/libcompiler_rt" + bootstrap_libc + else + is_native_abi || bootstrap_libgcc + is_native_abi && has_version "<=sys-freebsd/freebsd-lib-10.0" && bootstrap_libgcc + fi + is_native_abi || bootstrap_libthr +} + +# Taken from freebsd-libexec. +libexec_setup_multilib_vars() { + export mymakeopts="${mymakeopts} WITHOUT_RCMDS= WITHOUT_PF= " + need_bootstrap && CFLAGS="${CFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}" + append-ldflags "-L${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libc" + if ! multilib_is_native_abi ; then + cd "${WORKDIR}/libexec/rtld-elf" || die + export mymakeopts="${mymakeopts} PROG=ld-elf32.so.1 " + else + cd "${WORKDIR}/libexec" || die + fi + "$@" +} + +# Compile it. Assume we have the toolchain setup correctly. +do_compile() { + # Bootstrap if needed, otherwise assume the system headers are in + # /usr/include. + if need_bootstrap ; then + do_bootstrap + else + CFLAGS="${CFLAGS} -isystem /usr/include" + [[ $(tc-getCXX) = *clang++* ]] && CXXFLAGS="${CXXFLAGS} -isystem /usr/include/c++/v1" + fi + + export RAW_LDFLAGS=$(raw-ldflags) + + # Everything is now setup, build it! + for i in $(get_subdirs) ; do + einfo "Building in ${i}... with CC=${CC} and CFLAGS=${CFLAGS}" + cd "${WORKDIR}/${i}/" || die "missing ${i}." + freebsd_src_compile || die "make ${i} failed" + done +} + +src_compile() { + # Does not work with GNU sed + # Force BSD's sed on BSD. + if [[ ${CBUILD:-${CHOST}} == *bsd* ]]; then + export ESED=/usr/bin/sed + unalias sed + fi + + use usb && export NON_NATIVE_SUBDIRS="${NON_NATIVE_SUBDIRS} lib/libusb lib/libusbhid" + + cd "${WORKDIR}/include" + $(freebsd_get_bmake) CC="$(tc-getCC)" SRCTOP="${WORKDIR}" || die "make include failed" + + use headers-only && return 0 + + # Bug #270098 + append-flags $(test-flags -fno-strict-aliasing) + + # Bug #324445 + append-flags $(test-flags -fno-strict-overflow) + + # strip flags and do not do it later, we only add safe, and in fact + # needed flags after all + strip-flags + export NOFLAGSTRIP=yes + if is_crosscompile ; then + export YACC='yacc -by' + CHOST=${CTARGET} tc-export CC LD CXX RANLIB + mymakeopts="${mymakeopts} NLS=" + CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" + CXXFLAGS="${CXXFLAGS} -isystem /usr/${CTARGET}/usr/include" + append-ldflags "-L${WORKDIR}/${CHOST}/${WORKDIR}/lib/libc" + fi + + if is_crosscompile ; then + do_compile + else + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) ) + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper do_compile + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper libexec_setup_multilib_vars freebsd_src_compile + fi +} + +gen_libc_ldscript() { + # Parameters: + # $1 = target libdir + # $2 = source libc dir + # $3 = source libssp_nonshared dir + + # Clear the symlink. + rm -f "${DESTDIR}/$2/libc.so" || die + + # Move the library if needed + if [ "$1" != "$2" ] ; then + mv "${DESTDIR}/$2/libc.so.7" "${DESTDIR}/$1/" || die + fi + + # Generate libc.so ldscript for inclusion of libssp_nonshared.a when linking + # this is done to avoid having to touch gcc spec file as it is currently + # done on FreeBSD upstream, mostly because their binutils aren't able to + # cope with linker scripts yet. + # Taken from toolchain-funcs.eclass: + local output_format + output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') + [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )" + + # The iconv symbol is provided by libc_nonshared.a. + # http://svnweb.freebsd.org/base?view=revision&revision=258283 + cat > "${DESTDIR}/$2/libc.so" <<-END_LDSCRIPT +/* GNU ld script + SSP (-fstack-protector) requires __stack_chk_fail_local to be local. + GCC invokes this symbol in a non-PIC way, which results in TEXTRELs if + this symbol was provided by a shared libc. So we link in + libssp_nonshared.a from here. + */ +${output_format} +GROUP ( /$1/libc.so.7 /$3/libc_nonshared.a /$3/libssp_nonshared.a ) +END_LDSCRIPT +} + +header_list="" + +move_header() { + local dirname=$(dirname ${1}) + local filename=$(basename ${1}) + + if [ ! -d "${dirname}/${ABI}" ] ; then + mkdir "${dirname}/${ABI}" || die + fi + + mv "${1}" "${dirname}/${ABI}/" || die + + export header_list="${header_list} ${1}" +} + +make_header_template() { + cat <<-END_HEADER +/* + * Wrapped header for multilib support. + * See the real headers included below. + */ + +#if defined(__x86_64__) + @ABI_amd64_fbsd@ +#elif defined(__i386__) + @ABI_x86_fbsd@ +#else + @ABI_${DEFAULT_ABI}@ +#endif +END_HEADER +} + +wrap_header() { + local dirname=$(dirname ${1}) + local filename=$(basename ${1}) + + if [ -n "${dirname#.}" ] ; then + dirname="${dirname}/${2}" + else + dirname="${2}" + fi + + if [ -f "${dirname}/${filename}" ] ; then + sed -e "s:@ABI_${2}@:#include <${dirname}/${filename}>:" ${1} + else + cat ${1} + fi +} + +wrap_header_end() { + sed -e "s:@ABI_.*@:#error \"Sorry, no support for your ABI.\":" ${1} +} + +do_install() { + if is_crosscompile ; then + INCLUDEDIR="/usr/${CTARGET}/usr/include" + else + INCLUDEDIR="/usr/include" + fi + + dodir ${INCLUDEDIR} + CTARGET="${CHOST}" \ + install_includes ${INCLUDEDIR} + + is_crosscompile && use headers-only && return 0 + + # Install a libusb.pc for better compat with Linux's libusb + if use usb ; then + dodir /usr/$(get_libdir)/pkgconfig + sed -i.bkp "s:^libdir=.*:libdir=/usr/$(get_libdir):g" "${S}"/libusb/libusb-*.pc + fi + + for i in $(get_subdirs) ; do + if [[ ${i} != *libiconv_modules* ]] ; then + einfo "Installing in ${i}..." + cd "${WORKDIR}/${i}/" || die "missing ${i}." + freebsd_src_install || die "Install ${i} failed" + fi + done + + if ! is_crosscompile; then + local mymakeopts_save="${mymakeopts}" + mymakeopts="${mymakeopts} SHLIBDIR=/usr/$(get_libdir)/i18n LIBDIR=/usr/$(get_libdir)/i18n" + + einfo "Installing in lib/libiconv_modules..." + cd "${WORKDIR}/lib/libiconv_modules/" || die "missing libiconv_modules." + freebsd_src_install || die "Install lib/libiconv_modules failed" + + mymakeopts="${mymakeopts_save}" + fi + + if ! is_crosscompile ; then + if ! multilib_is_native_abi ; then + DESTDIR="${D}" gen_libc_ldscript "usr/$(get_libdir)" "usr/$(get_libdir)" "usr/$(get_libdir)" + else + dodir "$(get_libdir)" + DESTDIR="${D}" gen_libc_ldscript "$(get_libdir)" "usr/$(get_libdir)" "usr/$(get_libdir)" + fi + else + CHOST=${CTARGET} DESTDIR="${D}/usr/${CTARGET}/" gen_libc_ldscript "usr/lib" "usr/lib" "usr/lib" + # We're done for the cross libc here. + return 0 + fi + + # Generate ldscripts for core libraries that will go in / + multilib_is_native_abi && \ + gen_usr_ldscript -a alias cam geom ipsec jail kiconv \ + kvm m md procstat sbuf thr ufs util elf + + if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]] ; then + cd "${D}/usr/include" + for i in machine/*.h fenv.h ; do + move_header ${i} + done + if multilib_is_native_abi ; then + # Supposedly the last one! + local uniq_headers="$(echo ${header_list} | tr ' ' '\n' | sort | uniq | tr '\n' ' ')" + for j in ${uniq_headers} ; do + make_header_template > ${j} + for i in $(get_all_abis) ; do + wrap_header ${j} ${i} > ${j}.new + cp ${j}.new ${j} + rm -f ${j}.new + done + wrap_header_end ${j} > ${j}.new + cp ${j}.new ${j} + rm -f ${j}.new + done + fi + fi +} + +src_install() { + if is_crosscompile ; then + einfo "Installing for ${CTARGET} in ${CHOST}.." + # From this point we need to force: get stripped with the correct tools, + # get tc-arch-kernel to return the right value, etc. + export CHOST=${CTARGET} + + mymakeopts="${mymakeopts} WITHOUT_MAN= \ + INCLUDEDIR=/usr/${CTARGET}/usr/include \ + SHLIBDIR=/usr/${CTARGET}/usr/lib \ + LIBDIR=/usr/${CTARGET}/usr/lib" + + dosym "usr/include" "/usr/${CTARGET}/sys-include" + do_install + + return 0 + else + export STRIP_MASK="*/usr/lib*/*crt*.o" + local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) ) + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper do_install + + # Taken from freebsd-libexec. + multibuild_foreach_variant freebsd_multilib_multibuild_wrapper libexec_setup_multilib_vars freebsd_src_install + insinto /etc + doins "${WORKDIR}/etc/gettytab" + newinitd "${FILESDIR}/bootpd.initd" bootpd + newconfd "${FILESDIR}/bootpd.confd" bootpd + + if use xinetd; then + for rpcd in rstatd rusersd walld rquotad sprayd; do + insinto /etc/xinetd.d + newins "${FILESDIR}/${rpcd}.xinetd" ${rpcd} + done + fi + fi + + cd "${WORKDIR}/etc/" + insinto /etc + doins nls.alias mac.conf netconfig + + # Install ttys file + local MACHINE="$(tc-arch-kernel)" + doins "etc.${MACHINE}"/* +} + +install_includes() +{ + local INCLUDEDIR="$1" + + # The idea is to be called from either install or unpack. + # During unpack it's required to install them as portage's user. + if [[ "${EBUILD_PHASE}" == "install" ]]; then + local DESTDIR="${D}" + BINOWN="root" + BINGRP="wheel" + else + local DESTDIR="${WORKDIR}" + [[ -z "${USER}" ]] && USER="portage" + BINOWN="${USER}" + [[ -z "${GROUPS}" ]] && GROUPS="portage" + BINGRP="${GROUPS}" + fi + + # Must exist before we use it. + [[ -d "${DESTDIR}${INCLUDEDIR}" ]] || die "dodir or mkdir ${INCLUDEDIR} before using install_includes." + cd "${WORKDIR}/include" + + local MACHINE="$(tc-arch-kernel)" + + einfo "Installing includes into ${INCLUDEDIR} as ${BINOWN}:${BINGRP}..." + $(freebsd_get_bmake) installincludes \ + MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE} \ + DESTDIR="${DESTDIR}" \ + INCLUDEDIR="${INCLUDEDIR}" BINOWN="${BINOWN}" \ + BINGRP="${BINGRP}" \ + WITHOUT_GSSAPI= \ + $(usex zfs "WITH_CDDL=" "WITHOUT_CDDL=") \ + SRCTOP="${WORKDIR}"|| die "install_includes() failed" + einfo "includes installed ok." + EXTRA_INCLUDES="lib/librtld_db lib/libutil lib/msun gnu/lib/libregex lib/libcasper lib/libmp" + for i in $EXTRA_INCLUDES; do + einfo "Installing $i includes into ${INCLUDEDIR} as ${BINOWN}:${BINGRP}..." + cd "${WORKDIR}/$i" || die + $(freebsd_get_bmake) installincludes DESTDIR="${DESTDIR}" \ + MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE} \ + INCLUDEDIR="${INCLUDEDIR}" BINOWN="${BINOWN}" \ + BINGRP="${BINGRP}" \ + SRCTOP="${WORKDIR}" || die "problem installing $i includes." + einfo "$i includes installed ok." + done +} diff --git a/sys-freebsd/freebsd-lib/freebsd-lib-11.1.ebuild b/sys-freebsd/freebsd-lib/freebsd-lib-11.1.ebuild deleted file mode 100644 index 61bfeb3924f8..000000000000 --- a/sys-freebsd/freebsd-lib/freebsd-lib-11.1.ebuild +++ /dev/null @@ -1,708 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=5 - -inherit bsdmk freebsd flag-o-matic multilib toolchain-funcs eutils multibuild multilib-build - -DESCRIPTION="FreeBSD's base system libraries" -SLOT="0" -LICENSE="BSD GPL-2 zfs? ( CDDL )" - -# Security Advisory and Errata patches. -# UPSTREAM_PATCHES=() - -# Crypto is needed to have an internal OpenSSL header -# sys is needed for libalias, probably we can just extract that instead of -# extracting the whole tarball -if [[ ${PV} != *9999* ]]; then - KEYWORDS="~amd64-fbsd ~x86-fbsd" - SRC_URI="${SRC_URI} - $(freebsd_upstream_patches)" -fi - -EXTRACTONLY=" - lib/ - contrib/ - crypto/ - libexec/ - etc/ - include/ - usr.bin/ - usr.sbin/ - gnu/ - secure/ -" - -if [ "${CATEGORY#*cross-}" = "${CATEGORY}" ]; then - RDEPEND="ssl? ( dev-libs/openssl:0= ) - hesiod? ( net-dns/hesiod ) - kerberos? ( app-crypt/heimdal ) - pam? ( virtual/pam ) - usb? ( !dev-libs/libusb ) - zfs? ( =sys-freebsd/freebsd-cddl-${RV}* ) - >=dev-libs/expat-2.0.1 - >=dev-util/dialog-1.2.20150225 - !sys-freebsd/freebsd-libexec - !sys-libs/libutempter - !dev-libs/libelf - !dev-libs/libexecinfo - !dev-libs/libiconv - !sys-freebsd/freebsd-headers" - DEPEND="${RDEPEND} - >=sys-devel/flex-2.5.31-r2 - =sys-freebsd/freebsd-sources-${RV}*" - RDEPEND="${RDEPEND} - =sys-freebsd/freebsd-share-${RV}* - xinetd? ( sys-apps/xinetd ) - >=virtual/libiconv-0-r2" -else - EXTRACTONLY+="sys/ " -fi - -DEPEND="${DEPEND} - userland_GNU? ( sys-apps/mtree ) - =sys-freebsd/freebsd-mk-defs-${RV}*" - -S="${WORKDIR}/lib" - -export CTARGET=${CTARGET:-${CHOST}} -if [ "${CTARGET}" = "${CHOST}" -a "${CATEGORY#*cross-}" != "${CATEGORY}" ]; then - export CTARGET=${CATEGORY/cross-} -fi - -IUSE="atm bluetooth ssl hesiod ipv6 kerberos usb netware - build headers-only zfs pam xinetd - userland_GNU userland_BSD" - -QA_DT_NEEDED="lib/libc.so.7 usr/lib32/libc.so.7" - -pkg_setup() { - # Add the required source files. - use build && EXTRACTONLY+="sys/ " - use zfs && EXTRACTONLY+="cddl/ " - - [ -c /dev/zero ] || \ - die "You forgot to mount /dev; the compiled libc would break." - - if ! use ssl && use kerberos; then - eerror "If you want kerberos support you need to enable ssl support, too." - fi - - use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= " - use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= " - use hesiod || mymakeopts="${mymakeopts} WITHOUT_HESIOD= " - use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6_SUPPORT= " - use kerberos || mymakeopts="${mymakeopts} WITHOUT_KERBEROS_SUPPORT= WITHOUT_GSSAPI= " - use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= " - use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= " - use usb || mymakeopts="${mymakeopts} WITHOUT_USB= " - use zfs || mymakeopts="${mymakeopts} WITHOUT_CDDL= " - - mymakeopts="${mymakeopts} WITHOUT_SENDMAIL= WITHOUT_CLANG= WITHOUT_LIBCPLUSPLUS= WITHOUT_LDNS= WITHOUT_UNBOUND= WITHOUT_BSNMP= " - - if [ "${CTARGET}" != "${CHOST}" ]; then - mymakeopts="${mymakeopts} MACHINE=$(tc-arch-kernel ${CTARGET})" - mymakeopts="${mymakeopts} MACHINE_ARCH=$(tc-arch-kernel ${CTARGET})" - fi - - # Taken from freebsd-libexec. - use pam || mymakeopts="${mymakeopts} WITHOUT_PAM_SUPPORT= " - if has_version " /dev/null | grep -q GNU; then - sed -i.bak -e 's:${INSTALL} -C:${INSTALL}:' "${WORKDIR}/include/Makefile" - fi - - # libsysdecode requires the latest headers. - need_bootstrap && \ - sed -i "s:\${DESTDIR}\${INCLUDEDIR}:${WORKDIR}/include_proper_${ABI}:g" "${S}/libsysdecode/Makefile" - - # Taken from freebsd-libexec. - cd "${WORKDIR}/libexec" - dummy_mk smrsh mail.local tcpd telnetd rshd rlogind ftpd - # The old version of yacc doesn't support YFLAGS="-i". - if has_version " "${WORKDIR}/bootstrap_libc_${ABI}/libc.so" || die -} - -bootstrap_libgcc() { - bootstrap_lib "lib/libcompiler_rt" - cd "${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libcompiler_rt" || die - ln -s libcompiler_rt.a libgcc.a || die - - bootstrap_libc - bootstrap_lib "gnu/lib/libgcc" -} - -bootstrap_libthr() { - bootstrap_lib "lib/libthr" - cd "${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libthr" || die - ln -s libthr.so libpthread.so -} - -# What to build for a cross-compiler. -# We also need the csu but this has to be handled separately. -CROSS_SUBDIRS="lib/libc lib/msun gnu/lib/libssp/libssp_nonshared lib/libthr lib/libutil lib/librt lib/libc_nonshared lib/libcompiler_rt" - -# What to build for non-default ABIs. -NON_NATIVE_SUBDIRS="${CROSS_SUBDIRS} gnu/lib/csu gnu/lib/libgcc lib/libmd lib/libcrypt lib/libsbuf lib/libcam lib/libelf lib/libiconv_modules" - -# Subdirs for a native build: -NATIVE_SUBDIRS="lib gnu/lib/libssp/libssp_nonshared gnu/lib/libregex gnu/lib/csu gnu/lib/libgcc lib/libiconv_modules" - -# Is my $ABI native ? -is_native_abi() { - is_crosscompile && return 1 - multilib_is_native_abi -} - -# Do we need to bootstrap the csu and libssp_nonshared? -need_bootstrap() { - 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}" -} - -# Get the subdirs we are building. -get_subdirs() { - local ret="" - if is_native_abi ; then - # If we are building for the native ABI, build everything - ret="${NATIVE_SUBDIRS}" - elif is_crosscompile ; then - # With a cross-compiler we only build the very core parts. - ret="${CROSS_SUBDIRS}" - if [ "${EBUILD_PHASE}" = "install" ]; then - # Add the csu dir first when installing. We treat it separately for - # compiling. - ret="$(get_csudir $(tc-arch-kernel ${CTARGET})) ${ret}" - fi - else - # For the non-native ABIs we only build the csu parts and very core - # libraries for now. - ret="${NON_NATIVE_SUBDIRS} $(get_csudir $(tc-arch-kernel ${CHOST}))" - fi - echo "${ret}" -} - -# Bootstrap the core libraries and setup the flags so that the other parts can -# build against it. -do_bootstrap() { - einfo "Bootstrapping on ${CHOST} for ${CTARGET}" - if ! is_crosscompile ; then - # Pre-install headers, but not when building a cross-compiler since we - # assume they have been installed in the previous pass. - einfo "Pre-installing includes in include_proper_${ABI}" - mkdir "${WORKDIR}/include_proper_${ABI}" || die - CTARGET="${CHOST}" install_includes "/include_proper_${ABI}" - CFLAGS="${CFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}" - [[ $(tc-getCXX) = *clang++* ]] && CXXFLAGS="${CXXFLAGS} -isystem /usr/include/c++/v1" - CXXFLAGS="${CXXFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}" - mymakeopts="${mymakeopts} RPCDIR=${WORKDIR}/include_proper_${ABI}/rpcsvc" - fi - bootstrap_csu - bootstrap_libssp_nonshared - if is_crosscompile ; then - bootstrap_lib "lib/libcompiler_rt" - bootstrap_libc - else - is_native_abi || bootstrap_libgcc - is_native_abi && has_version "<=sys-freebsd/freebsd-lib-10.0" && bootstrap_libgcc - fi - is_native_abi || bootstrap_libthr -} - -# Taken from freebsd-libexec. -libexec_setup_multilib_vars() { - export mymakeopts="${mymakeopts} WITHOUT_RCMDS= WITHOUT_PF= " - need_bootstrap && CFLAGS="${CFLAGS} -isystem ${WORKDIR}/include_proper_${ABI}" - append-ldflags "-L${MAKEOBJDIRPREFIX}/${WORKDIR}/lib/libc" - if ! multilib_is_native_abi ; then - cd "${WORKDIR}/libexec/rtld-elf" || die - export mymakeopts="${mymakeopts} PROG=ld-elf32.so.1 " - else - cd "${WORKDIR}/libexec" || die - fi - "$@" -} - -# Compile it. Assume we have the toolchain setup correctly. -do_compile() { - # Bootstrap if needed, otherwise assume the system headers are in - # /usr/include. - if need_bootstrap ; then - do_bootstrap - else - CFLAGS="${CFLAGS} -isystem /usr/include" - [[ $(tc-getCXX) = *clang++* ]] && CXXFLAGS="${CXXFLAGS} -isystem /usr/include/c++/v1" - fi - - export RAW_LDFLAGS=$(raw-ldflags) - - # Everything is now setup, build it! - for i in $(get_subdirs) ; do - einfo "Building in ${i}... with CC=${CC} and CFLAGS=${CFLAGS}" - cd "${WORKDIR}/${i}/" || die "missing ${i}." - freebsd_src_compile || die "make ${i} failed" - done -} - -src_compile() { - # Does not work with GNU sed - # Force BSD's sed on BSD. - if [[ ${CBUILD:-${CHOST}} == *bsd* ]]; then - export ESED=/usr/bin/sed - unalias sed - fi - - use usb && export NON_NATIVE_SUBDIRS="${NON_NATIVE_SUBDIRS} lib/libusb lib/libusbhid" - - cd "${WORKDIR}/include" - $(freebsd_get_bmake) CC="$(tc-getCC)" SRCTOP="${WORKDIR}" || die "make include failed" - - use headers-only && return 0 - - # Bug #270098 - append-flags $(test-flags -fno-strict-aliasing) - - # Bug #324445 - append-flags $(test-flags -fno-strict-overflow) - - # strip flags and do not do it later, we only add safe, and in fact - # needed flags after all - strip-flags - export NOFLAGSTRIP=yes - if is_crosscompile ; then - export YACC='yacc -by' - CHOST=${CTARGET} tc-export CC LD CXX RANLIB - mymakeopts="${mymakeopts} NLS=" - CFLAGS="${CFLAGS} -isystem /usr/${CTARGET}/usr/include" - CXXFLAGS="${CXXFLAGS} -isystem /usr/${CTARGET}/usr/include" - append-ldflags "-L${WORKDIR}/${CHOST}/${WORKDIR}/lib/libc" - fi - - if is_crosscompile ; then - do_compile - else - local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) ) - multibuild_foreach_variant freebsd_multilib_multibuild_wrapper do_compile - multibuild_foreach_variant freebsd_multilib_multibuild_wrapper libexec_setup_multilib_vars freebsd_src_compile - fi -} - -gen_libc_ldscript() { - # Parameters: - # $1 = target libdir - # $2 = source libc dir - # $3 = source libssp_nonshared dir - - # Clear the symlink. - rm -f "${DESTDIR}/$2/libc.so" || die - - # Move the library if needed - if [ "$1" != "$2" ] ; then - mv "${DESTDIR}/$2/libc.so.7" "${DESTDIR}/$1/" || die - fi - - # Generate libc.so ldscript for inclusion of libssp_nonshared.a when linking - # this is done to avoid having to touch gcc spec file as it is currently - # done on FreeBSD upstream, mostly because their binutils aren't able to - # cope with linker scripts yet. - # Taken from toolchain-funcs.eclass: - local output_format - output_format=$($(tc-getCC) ${CFLAGS} ${LDFLAGS} -Wl,--verbose 2>&1 | sed -n 's/^OUTPUT_FORMAT("\([^"]*\)",.*/\1/p') - [[ -n ${output_format} ]] && output_format="OUTPUT_FORMAT ( ${output_format} )" - - # The iconv symbol is provided by libc_nonshared.a. - # http://svnweb.freebsd.org/base?view=revision&revision=258283 - cat > "${DESTDIR}/$2/libc.so" <<-END_LDSCRIPT -/* GNU ld script - SSP (-fstack-protector) requires __stack_chk_fail_local to be local. - GCC invokes this symbol in a non-PIC way, which results in TEXTRELs if - this symbol was provided by a shared libc. So we link in - libssp_nonshared.a from here. - */ -${output_format} -GROUP ( /$1/libc.so.7 /$3/libc_nonshared.a /$3/libssp_nonshared.a ) -END_LDSCRIPT -} - -header_list="" - -move_header() { - local dirname=$(dirname ${1}) - local filename=$(basename ${1}) - - if [ ! -d "${dirname}/${ABI}" ] ; then - mkdir "${dirname}/${ABI}" || die - fi - - mv "${1}" "${dirname}/${ABI}/" || die - - export header_list="${header_list} ${1}" -} - -make_header_template() { - cat <<-END_HEADER -/* - * Wrapped header for multilib support. - * See the real headers included below. - */ - -#if defined(__x86_64__) - @ABI_amd64_fbsd@ -#elif defined(__i386__) - @ABI_x86_fbsd@ -#else - @ABI_${DEFAULT_ABI}@ -#endif -END_HEADER -} - -wrap_header() { - local dirname=$(dirname ${1}) - local filename=$(basename ${1}) - - if [ -n "${dirname#.}" ] ; then - dirname="${dirname}/${2}" - else - dirname="${2}" - fi - - if [ -f "${dirname}/${filename}" ] ; then - sed -e "s:@ABI_${2}@:#include <${dirname}/${filename}>:" ${1} - else - cat ${1} - fi -} - -wrap_header_end() { - sed -e "s:@ABI_.*@:#error \"Sorry, no support for your ABI.\":" ${1} -} - -do_install() { - if is_crosscompile ; then - INCLUDEDIR="/usr/${CTARGET}/usr/include" - else - INCLUDEDIR="/usr/include" - fi - - dodir ${INCLUDEDIR} - CTARGET="${CHOST}" \ - install_includes ${INCLUDEDIR} - - is_crosscompile && use headers-only && return 0 - - # Install a libusb.pc for better compat with Linux's libusb - if use usb ; then - dodir /usr/$(get_libdir)/pkgconfig - sed -i.bkp "s:^libdir=.*:libdir=/usr/$(get_libdir):g" "${S}"/libusb/libusb-*.pc - fi - - for i in $(get_subdirs) ; do - if [[ ${i} != *libiconv_modules* ]] ; then - einfo "Installing in ${i}..." - cd "${WORKDIR}/${i}/" || die "missing ${i}." - freebsd_src_install || die "Install ${i} failed" - fi - done - - if ! is_crosscompile; then - local mymakeopts_save="${mymakeopts}" - mymakeopts="${mymakeopts} SHLIBDIR=/usr/$(get_libdir)/i18n LIBDIR=/usr/$(get_libdir)/i18n" - - einfo "Installing in lib/libiconv_modules..." - cd "${WORKDIR}/lib/libiconv_modules/" || die "missing libiconv_modules." - freebsd_src_install || die "Install lib/libiconv_modules failed" - - mymakeopts="${mymakeopts_save}" - fi - - if ! is_crosscompile ; then - if ! multilib_is_native_abi ; then - DESTDIR="${D}" gen_libc_ldscript "usr/$(get_libdir)" "usr/$(get_libdir)" "usr/$(get_libdir)" - else - dodir "$(get_libdir)" - DESTDIR="${D}" gen_libc_ldscript "$(get_libdir)" "usr/$(get_libdir)" "usr/$(get_libdir)" - fi - else - CHOST=${CTARGET} DESTDIR="${D}/usr/${CTARGET}/" gen_libc_ldscript "usr/lib" "usr/lib" "usr/lib" - # We're done for the cross libc here. - return 0 - fi - - # Generate ldscripts for core libraries that will go in / - multilib_is_native_abi && \ - gen_usr_ldscript -a alias cam geom ipsec jail kiconv \ - kvm m md procstat sbuf thr ufs util elf - - if [[ ${#MULTIBUILD_VARIANTS[@]} -gt 1 ]] ; then - cd "${D}/usr/include" - for i in machine/*.h fenv.h ; do - move_header ${i} - done - if multilib_is_native_abi ; then - # Supposedly the last one! - local uniq_headers="$(echo ${header_list} | tr ' ' '\n' | sort | uniq | tr '\n' ' ')" - for j in ${uniq_headers} ; do - make_header_template > ${j} - for i in $(get_all_abis) ; do - wrap_header ${j} ${i} > ${j}.new - cp ${j}.new ${j} - rm -f ${j}.new - done - wrap_header_end ${j} > ${j}.new - cp ${j}.new ${j} - rm -f ${j}.new - done - fi - fi -} - -src_install() { - if is_crosscompile ; then - einfo "Installing for ${CTARGET} in ${CHOST}.." - # From this point we need to force: get stripped with the correct tools, - # get tc-arch-kernel to return the right value, etc. - export CHOST=${CTARGET} - - mymakeopts="${mymakeopts} WITHOUT_MAN= \ - INCLUDEDIR=/usr/${CTARGET}/usr/include \ - SHLIBDIR=/usr/${CTARGET}/usr/lib \ - LIBDIR=/usr/${CTARGET}/usr/lib" - - dosym "usr/include" "/usr/${CTARGET}/sys-include" - do_install - - return 0 - else - export STRIP_MASK="*/usr/lib*/*crt*.o" - local MULTIBUILD_VARIANTS=( $(multilib_get_enabled_abis) ) - multibuild_foreach_variant freebsd_multilib_multibuild_wrapper do_install - - # Taken from freebsd-libexec. - multibuild_foreach_variant freebsd_multilib_multibuild_wrapper libexec_setup_multilib_vars freebsd_src_install - insinto /etc - doins "${WORKDIR}/etc/gettytab" - newinitd "${FILESDIR}/bootpd.initd" bootpd - newconfd "${FILESDIR}/bootpd.confd" bootpd - - if use xinetd; then - for rpcd in rstatd rusersd walld rquotad sprayd; do - insinto /etc/xinetd.d - newins "${FILESDIR}/${rpcd}.xinetd" ${rpcd} - done - fi - fi - - cd "${WORKDIR}/etc/" - insinto /etc - doins nls.alias mac.conf netconfig - - # Install ttys file - local MACHINE="$(tc-arch-kernel)" - doins "etc.${MACHINE}"/* -} - -install_includes() -{ - local INCLUDEDIR="$1" - - # The idea is to be called from either install or unpack. - # During unpack it's required to install them as portage's user. - if [[ "${EBUILD_PHASE}" == "install" ]]; then - local DESTDIR="${D}" - BINOWN="root" - BINGRP="wheel" - else - local DESTDIR="${WORKDIR}" - [[ -z "${USER}" ]] && USER="portage" - BINOWN="${USER}" - [[ -z "${GROUPS}" ]] && GROUPS="portage" - BINGRP="${GROUPS}" - fi - - # Must exist before we use it. - [[ -d "${DESTDIR}${INCLUDEDIR}" ]] || die "dodir or mkdir ${INCLUDEDIR} before using install_includes." - cd "${WORKDIR}/include" - - local MACHINE="$(tc-arch-kernel)" - - einfo "Installing includes into ${INCLUDEDIR} as ${BINOWN}:${BINGRP}..." - $(freebsd_get_bmake) installincludes \ - MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE} \ - DESTDIR="${DESTDIR}" \ - INCLUDEDIR="${INCLUDEDIR}" BINOWN="${BINOWN}" \ - BINGRP="${BINGRP}" \ - WITHOUT_GSSAPI= \ - $(usex zfs "WITH_CDDL=" "WITHOUT_CDDL=") \ - SRCTOP="${WORKDIR}"|| die "install_includes() failed" - einfo "includes installed ok." - EXTRA_INCLUDES="lib/librtld_db lib/libutil lib/msun gnu/lib/libregex lib/libcasper lib/libmp" - for i in $EXTRA_INCLUDES; do - einfo "Installing $i includes into ${INCLUDEDIR} as ${BINOWN}:${BINGRP}..." - cd "${WORKDIR}/$i" || die - $(freebsd_get_bmake) installincludes DESTDIR="${DESTDIR}" \ - MACHINE=${MACHINE} MACHINE_ARCH=${MACHINE} \ - INCLUDEDIR="${INCLUDEDIR}" BINOWN="${BINOWN}" \ - BINGRP="${BINGRP}" \ - SRCTOP="${WORKDIR}" || die "problem installing $i includes." - einfo "$i includes installed ok." - done -} diff --git a/sys-freebsd/freebsd-usbin/Manifest b/sys-freebsd/freebsd-usbin/Manifest index c95480e33781..198f7ebf568d 100644 --- a/sys-freebsd/freebsd-usbin/Manifest +++ b/sys-freebsd/freebsd-usbin/Manifest @@ -2,8 +2,6 @@ AUX freebsd-usbin-10.3-bsdxml2expat.patch 406 BLAKE2B bddbdf3869a084f4a3eed61639 AUX freebsd-usbin-11.0-workaround.patch 374 BLAKE2B 7e4b18ccddd1da87fc2d6bb8d8c98be45cc1b2d1d8b383316746a793b6eb3aa9d722e11ea600d0c49111b00c5ddb237eaa019b2babeed86da7d0beef6ff0189d SHA512 c9e8b493d99581dd7beac48def291843e31649a2962f720ed06ef095a128b039e8308662cfbbfcbecfbd0265132bb7a4df9d895ffe69aac09c129389ba5be518 AUX freebsd-usbin-11.1-bsdxml2expat.patch 841 BLAKE2B 89b5b0ed64dcf5c95eb727110651bb77079a4ccfc346fbd9ac1b26e3a4d53c452d657379ca876e6eb8b50dd90be59737b84405de873613dadf3bebeae7c788de SHA512 69f9055dc536132f1ec46389b53e25261632d726bc74857210ecb5511114f07d4b550e5e4a7a6e066a4a68c4a4bb4e44309d01f569b154fc773247dbd7f3fb23 AUX freebsd-usbin-9.0-newsyslog.patch 507 BLAKE2B 7c95ebd60ca6cc1bac56b84359a389dada9e71de9f275cf99d72f329fb408bd16845fb46d60037c514deb4ea21cd894da57ae28193e56970e383c5a8e1c689b7 SHA512 5423fc577035c2a272d4cb4305c5ee5e1e910a68af44595524665f7b867bd0a48bab0349b2fa13eabc385b2ec29c8f578d018cd8196f3ad20a13a68d36a335ae -AUX freebsd-usbin-9.1-bsdxml2expat.patch 431 BLAKE2B c521420d05d41a4f65d20786c0057e4e684860f1ba28d2976fa44c6fa94379ab1423b8e332cf30c99fdf6b06b54525c491e2fc17a5f820e7cbc2d1a10d868b2c SHA512 ef1e9be49796b50e8dd818ac1a6f363eaa54d767ac9477e3df09354df78dff887a31a3c793288f321b7976bd98de79821742550ee8e7f9fcf3b1a42cccbc68b0 -AUX freebsd-usbin-9.1-kldxref.patch 756 BLAKE2B 9ddf3efe8b5c0ed13158bda03c2a89e70d0692520d31590448a3b24440b24228edc37600a3052fc91c82ac6f9ab8a5ef163954b911122659ce26d95d1fe5836f SHA512 8d1e0c80a6698729bdf40e60ac0373ed76e4c394f7fc93e9ae78e9e8bb06d63c99d04dbb942e90cc9240fc429be7048c4fee22c3ce593b49be90c9df3fc549ec AUX freebsd-usbin-adduser.patch 428 BLAKE2B 3008953aa7ea14405b0e914f518fa05a5de744283110959900ab1ee9887b8b48d8d15131f26280773ff0173f1c60c077c66fedfad1b0310d0e6c5abb5a2b1370 SHA512 51720e3db9bf3728afc0dc370a469746cb1bf61623c44a20c58e27d647e5a5d0360145b1d174382176d803f2558afa2f2a29eca6c85c638529d0e11e2859c0c3 AUX iscsid.initd 429 BLAKE2B 366c216bf7f4584d1aa115302547b7066105b5107a976504c68725a1f7ca80adb7bd19b4acdaa2ea41b45c42bfed2b028a17ab28201163222788432768f2e5a6 SHA512 49a90719aa0279e19899a2107113cad0784a2cf3b57a0c24ad08549fa4b44dcb1aceecd71027e363b8d2cbbe1b590480ef7806cb05d8b00c1830c2d77b8a8540 AUX nfs.confd 303 BLAKE2B 69f72512c7e518f9078ea3873c5a2c9f0e1fef02ba3d769a18d1c8f347a8f8d5981cbe7ce34946431b373ae2b580505d74714f7bdbc0a7298745f02f96d35404 SHA512 4224c7f525e39b105b8d80caa7db0f3e0b07d6c521970b2aacfd707ef524262cbdb9ed8aa5151022d571a759151dd25a280fc765a38e67864b0c446ee9fd6b5a @@ -13,17 +11,6 @@ AUX nfsuserd.initd 447 BLAKE2B 0367d6849fc1392ae308023c5c5ddf4df0db0b38e86c486d8 AUX pw.conf 179 BLAKE2B d93e3d2df7bc636b21b2bfa30b5b76b671f98631c360f7977c9368b0f1fa96cfa922c6820836addd24804b50c3a9978ca901dd7068f5d721b8ac8c6b8ff151f7 SHA512 042b7c7805d891f453da58f607edb3174fddc8443d6995ebe833185ab313328c131bae87dbbc9db95bf69a9ee71548d350191b34a8b2bf41a56416aff03c3891 AUX rpc.lockd.initd 530 BLAKE2B 03926d9b01e3d191030a18785ef53824836d1826895d064a303d83f5eff8e3a3630273d5547d1d0d95bd85db7f421b790671cf9e882af58621dd8756fde86fe6 SHA512 930c42b63a230f6f64ecdaec95f61e43b463abe109f926c298507fa3c6b090edba1f8dcc95046a0a5b8c0378d336fbf728f9db77b8b0822d0e2b36713fefc9e5 AUX rpc.statd.initd 520 BLAKE2B 701d58e57520dd9237a7e2261071304a1f820816c0902e06122a4729872432e6c29dc62a686f53d674a75f2c3050b6adf04b2d3c665f2f3639362fecf0ca929c SHA512 62c3bef69ca0619e3492050379a4c8b490305ab0ee7620143c31be7af414b1f1cbd79feaee345bd5e6bfdfa6c93bcce3cc9ff61a2f63e235a3807920e260cb7a -DIST freebsd-contrib-9.1.tar.bz2 54751432 BLAKE2B 8a30e78021e6388d679637d2dbe0ed3f4896d3902064baaafa79de9c328171cbcb895b0ffd3d0d0cd3ca25c93a73584ed4900b45bd672a73b15b75721de59de5 SHA512 71be13049258c6e6b5e4f63cc16da5d349a89d68f04d87446e4ad33ae8bf2a93ea67d9c256b7bec60b61e65db0487268070cfb77a484c3ac0f8ba368b48c2438 -DIST freebsd-etc-9.1.tar.bz2 207776 BLAKE2B 61fbfa11dfcd24c007c20940a4b7cc802dfb9a991e41433840c57f113eaaa9e2b833a15f48d60c706e55d941b0a999baabd0c33197cffd522b67c57eaa9460f1 SHA512 4fbe56fde519cf2f44e39a8869efa26c34f703cf540f4a83389da8d170873d7c6fb18e4010e643b8d793cfc5c55d15eeb198057a5b2a8da9d9e8f791801bf314 -DIST freebsd-gnu-9.1.tar.bz2 795778 BLAKE2B a922a8bd2c8a7ddbac757e7db900109918bf214a34988adb45bdb11e5c829445cac9b13b0ed27ec62603aeae1e3230af362682182494db0ec95ff47cbfd7d927 SHA512 b05f2a5a10bdaeef19dfd0e962bc09f1571288a831e9345f404b920037f47db5c0ca3d620d1cbdd138b18bca1c3feab5b211b57e3041727341e5238cb9feb4fd -DIST freebsd-include-9.1.tar.bz2 146881 BLAKE2B 3db8570a8c841ec1c9ceff479bd0ef9b146b2a343d6596892c9d8a9f9193404f6c62712cb96d7416c6e5cc4c46e7fb942421c47e1bc2c707dde534e2050be442 SHA512 779c8315ce2b10b343bb62e331525d510b0d68ce5d665a1672bd6f4d1eff6445bc6b7a0f178b319828aa203c4e4c04c561ce793052703f4f936ce9711280a0c9 -DIST freebsd-lib-9.1.tar.bz2 3206685 BLAKE2B 67f93b7951fc03e877ee525d53b81ba49c8c1a70041c30aac97665d5dab7b3f2817fdb3bbb1475be66c33a7f996309e9020f1a3d1154fab8e2f6789f5ae0bb18 SHA512 40d0c36b6b889c404fa0e0afa38ba4e84a55bc88ffa2f98a70afbd7a32c4f32c158617ba770567d082a986d62c09b3ec8db3dc5ab853ee1c9bbe0b90bb82396e -DIST freebsd-libexec-9.1.tar.bz2 304592 BLAKE2B 994543ac910e4703d36682f6c0550596e340605754b9386770660f0ed0e70f8d437185f2010e6be795a8cc508aa7d69c90cc0a0df968c5dd8de4c5c4bb38e8c2 SHA512 7baa4160dda2610250dd52f445e24478e0f1ea10bce21fcd0e5d1b856f399b896adc334114de0c7f61a5637e4349bb1688fdbe5c72798d8568ae791114710b92 -DIST freebsd-sbin-9.1.tar.bz2 1273913 BLAKE2B c00fea446a19311020ae081ba00d6c7d0b3b0365ab2046ec24252c2b02d4b4079fb7bbbf0d17432e2a1efb0788b552d684b1b91bbbb05d2c1712a93380a89b49 SHA512 9f186602b7de96f268c352ca386986652fddf5570e7eca1afa8c0d2bdc83b57df1198efe47f36dd5c7a6abf4f9c935f1c8207a4a12a6b2153bd6c3c6292719dc DIST freebsd-src-11.1.tar.xz 147661560 BLAKE2B a9e6ba9d0e12c8b56ac58575d5f02931edbb6a3545d9dccae78810d2d0470a29b29dd7f724b03b8afafbca23717a71346e4cfbd3530e0f40118a23609c3f414e SHA512 b97707ec7a601ca6bcb682c45f6d94a38484301ac24630d7285eff6f88b027ce6900c93fc62f8ce36e0cf32c91f73a9d1c999db397b7f8782fd74a8551a03aca -DIST freebsd-sys-9.1.tar.bz2 32588103 BLAKE2B 7f94a4735c6a17b39a86fa0fda0682924b18e4b466dc6319a5df889522aaeaffaa87e1b76582c48ae034df8c20169c8cea93bbd3d6e7abd0526716686f88dfe8 SHA512 7dc9d9e00dde8f592bb171f4386d02b655b73cb4f153fe5ec063d010a148ef0639eae0dcdb3eeb09ecd1e3653c69e49a2d261329fa6d0381d2ddabe258ddde6d -DIST freebsd-ubin-9.1.tar.bz2 1910472 BLAKE2B 4bab770072543d9eb25ce7ce450084e0eb9ca603deb58886a26495a92a05373f4f8f5821c65dc76365bf325a7291e6b630b00af5ba895784093d450163637504 SHA512 74ae0aceec8597aa66c3f1ab313f0685a3c63d7273c36ae7baf8794275ad9bca241c60c3f6281cccf6d531d250d7611099977d3b1a27279cef3586401b6af05e -DIST freebsd-usbin-9.1.tar.bz2 2670916 BLAKE2B 353c7e641c0cccf25b99cb454368bd3001cd6b85a15956b1ee2de1ab240c420602e04bf6d0389aca0bdd4f7d1206a6848516e58a17eda4881d849f078b71a139 SHA512 21c234312f70eb35cd2926519efc1f61592892f5d0940786dbeb959c3c5ec7819a51ae95c6e8a1a06aa01f669350fe0fd3dd7c4ec8a84dd6b90f24cb192356ca EBUILD freebsd-usbin-11.1.ebuild 5442 BLAKE2B 68a9b16ec4eceded11cbfda41eaf8e5d5108e43ba16d351c8e7e82480ab747f9088592bf6dc9aeb35507cfe0d53936108dee467ed0ddac1b728141116925f42b SHA512 ec043c20093c49637c5ee352259015addcf23c610c893a21b3a9f512b097b3d659ed788316540435b3edfedbe3b949325f2a935a8d46acd61593cb27dd6756ac -EBUILD freebsd-usbin-9.1-r1.ebuild 5347 BLAKE2B f2588f153a30c134cebc1bf46092840fd1638ee963c296aa7872871e482b186463783bb14ec3dadc987d2c121f883f2ac82586e819fddad73ffdcd48c2421556 SHA512 578b2754262864fee5f76b0a3b4e30b5d3069d47a20fb9aa6a97ab70da1dfe0a1cb42121debca776c3e94fd9de1d1501b0cdc9c2b7ba0cc34bacc6157cc4e291 MISC metadata.xml 599 BLAKE2B 70b00a85a1d670dc842bf5234aa6a82cc31564ec25c2f1789440b5beae5e4e0ab76b7b16122b92205d616e86225d892eb183f21c3e0c8aa63cb32f60a0647265 SHA512 afe1f9e8ccacac89bcd308b6476bba009035542f86d71f70f27df029ff20dda7ff7ff8c9510e6939d502a31750c6bf69de608440fb61b1d590d018446aa14f99 diff --git a/sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-bsdxml2expat.patch b/sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-bsdxml2expat.patch deleted file mode 100644 index bddc0c77f210..000000000000 --- a/sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-bsdxml2expat.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur work.orig/usr.sbin/ctladm/ctladm.c work/usr.sbin/ctladm/ctladm.c ---- work.orig/usr.sbin/ctladm/ctladm.c 2012-07-12 13:25:58.000000000 +0900 -+++ work/usr.sbin/ctladm/ctladm.c 2012-07-16 05:37:14.000000000 +0900 -@@ -60,7 +60,7 @@ - #include - #include - #include --#include -+#include - #include - #include - #include diff --git a/sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-kldxref.patch b/sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-kldxref.patch deleted file mode 100644 index 95bd665ded6f..000000000000 --- a/sys-freebsd/freebsd-usbin/files/freebsd-usbin-9.1-kldxref.patch +++ /dev/null @@ -1,30 +0,0 @@ -Index: usr.sbin/kldxref/kldxref.c -=================================================================== ---- usr.sbin/kldxref/kldxref.c (revision 265111) -+++ usr.sbin/kldxref/kldxref.c (working copy) -@@ -274,6 +274,16 @@ usage(void) - exit(1); - } - -+static int -+compare(const FTSENT *const *a, const FTSENT *const *b) -+{ -+ if ((*a)->fts_info == FTS_D && (*b)->fts_info != FTS_D) -+ return 1; -+ if ((*a)->fts_info != FTS_D && (*b)->fts_info == FTS_D) -+ return -1; -+ return strcmp((*a)->fts_name, (*b)->fts_name); -+} -+ - int - main(int argc, char *argv[]) - { -@@ -315,7 +325,7 @@ main(int argc, char *argv[]) - err(1, "%s", argv[0]); - } - -- ftsp = fts_open(argv, fts_options, 0); -+ ftsp = fts_open(argv, fts_options, compare); - if (ftsp == NULL) - exit(1); - diff --git a/sys-freebsd/freebsd-usbin/freebsd-usbin-9.1-r1.ebuild b/sys-freebsd/freebsd-usbin/freebsd-usbin-9.1-r1.ebuild deleted file mode 100644 index 2627caf77333..000000000000 --- a/sys-freebsd/freebsd-usbin/freebsd-usbin-9.1-r1.ebuild +++ /dev/null @@ -1,170 +0,0 @@ -# Copyright 1999-2018 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 - -EAPI=2 - -inherit bsdmk freebsd flag-o-matic eutils - -DESCRIPTION="FreeBSD /usr/sbin tools" -SLOT="0" -KEYWORDS="~amd64-fbsd ~x86-fbsd" - -SRC_URI="mirror://gentoo/${P}.tar.bz2 - mirror://gentoo/${CONTRIB}.tar.bz2 - mirror://gentoo/${UBIN}.tar.bz2 - mirror://gentoo/${LIB}.tar.bz2 - mirror://gentoo/${SBIN}.tar.bz2 - mirror://gentoo/${ETC}.tar.bz2 - mirror://gentoo/${GNU}.tar.bz2 - nis? ( mirror://gentoo/${LIBEXEC}.tar.bz2 ) - build? ( mirror://gentoo/${SYS}.tar.bz2 - mirror://gentoo/${INCLUDE}.tar.bz2 )" - -RDEPEND="=sys-freebsd/freebsd-lib-${RV}*[usb?,bluetooth?,netware?] - =sys-freebsd/freebsd-libexec-${RV}* - =sys-freebsd/freebsd-contrib-${RV}* - acpi? ( sys-power/iasl ) - build? ( sys-apps/baselayout ) - ssl? ( dev-libs/openssl ) - >=app-arch/libarchive-3 - sys-apps/tcp-wrappers - dev-util/dialog - dev-libs/libelf - >=dev-libs/libedit-20120311.3.0-r1 - net-libs/libpcap - kerberos? ( app-crypt/heimdal )" -DEPEND="${RDEPEND} - =sys-freebsd/freebsd-mk-defs-${RV}* - =sys-freebsd/freebsd-ubin-${RV}* - !build? ( =sys-freebsd/freebsd-sources-${RV}* ) - sys-apps/texinfo - sys-devel/flex" - -S="${WORKDIR}/usr.sbin" - -IUSE="acpi atm audit bluetooth floppy ipv6 kerberos minimal netware nis pam ssl usb build" - -pkg_setup() { - # Release crunch is something like minimal. It seems to remove everything - # which is not needed to work. - use minimal && mymakeopts="${mymakeopts} RELEASE_CRUNCH= " - - use acpi || mymakeopts="${mymakeopts} WITHOUT_ACPI= " - use atm || mymakeopts="${mymakeopts} WITHOUT_ATM= " - use audit || mymakeopts="${mymakeopts} WITHOUT_AUDIT= " - use bluetooth || mymakeopts="${mymakeopts} WITHOUT_BLUETOOTH= " - use ipv6 || mymakeopts="${mymakeopts} WITHOUT_INET6= WITHOUT_INET6_SUPPORT= " - use netware || mymakeopts="${mymakeopts} WITHOUT_IPX= WITHOUT_IPX_SUPPORT= WITHOUT_NCP= " - use nis || mymakeopts="${mymakeopts} WITHOUT_NIS= " - use pam || mymakeopts="${mymakeopts} WITHOUT_PAM_SUPPORT= " - use ssl || mymakeopts="${mymakeopts} WITHOUT_OPENSSL= " - use usb || mymakeopts="${mymakeopts} WITHOUT_USB= " - use floppy || mymakeopts="${mymakeopts} WITHOUT_FLOPPY= " - use kerberos || mymakeopts="${mymakeopts} WITHOUT_GSSAPI= " - - mymakeopts="${mymakeopts} WITHOUT_BIND_NAMED= WITHOUT_BIND_DNSSEC= WITHOUT_PF= WITHOUT_LPR= WITHOUT_SENDMAIL= WITHOUT_AUTHPF= WITHOUT_MAILWRAPPER= " - - append-flags $(test-flags -fno-strict-aliasing) -} - -PATCHES=( - "${FILESDIR}/${PN}-adduser.patch" - "${FILESDIR}/${PN}-9.0-newsyslog.patch" - "${FILESDIR}/${PN}-9.1-bsdxml2expat.patch" - "${FILESDIR}/${PN}-9.1-kldxref.patch" - ) - -REMOVE_SUBDIRS=" - named named-checkzone named-checkconf rndc rndc-confgen - dnssec-keygen dnssec-signzone - tcpdchk tcpdmatch - sendmail praliases editmap mailstats makemap - sysinstall cron mailwrapper ntp bsnmpd - tcpdump ndp inetd - wpa/wpa_supplicant wpa/hostapd wpa/hostapd_cli wpa/wpa_cli wpa/wpa_passphrase - zic amd - pkg pkg_install freebsd-update service" - -src_prepare() { - if ! use build; then - ln -s "/usr/src/sys-${RV}" "${WORKDIR}/sys" - ln -s "/usr/include" "${WORKDIR}/include" - else - dummy_mk mount_smbfs - fi - # Don't install mtree format manpage - # it's installed by libarchive. - sed -e "s: mtree.5::g" -i "${S}"/mtree/Makefile -} - -src_install() { - # By creating these directories we avoid having to do a - # more complex hack - dodir /usr/share/doc - dodir /sbin - dodir /usr/libexec - dodir /usr/bin - - # FILESDIR is used by some makefiles which will install files - # in the wrong place, just put it in the doc directory. - mkinstall DOCDIR=/usr/share/doc/${PF} || die "Install failed" - - # Most of these now come from openrc. - for util in nfs rpc.statd rpc.lockd; do - newinitd "${FILESDIR}/"${util}.initd ${util} || die - if [[ -e "${FILESDIR}"/${util}.confd ]]; then \ - newconfd "${FILESDIR}"/${util}.confd ${util} || die - fi - done - - for class in daily monthly weekly; do - cat - > "${T}/periodic.${class}" <