public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Anthony G. Basile" <blueness@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/uclibc-ng/
Date: Sun, 27 Oct 2019 02:13:03 +0000 (UTC)	[thread overview]
Message-ID: <1572142377.66063d78eafb7cd8b3d9f09aaad789d531f6f70d.blueness@gentoo> (raw)

commit:     66063d78eafb7cd8b3d9f09aaad789d531f6f70d
Author:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
AuthorDate: Sun Oct 27 02:12:00 2019 +0000
Commit:     Anthony G. Basile <blueness <AT> gentoo <DOT> org>
CommitDate: Sun Oct 27 02:12:57 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=66063d78

sys-libs/uclibc-ng: remove older versions

Package-Manager: Portage-2.3.76, Repoman-2.3.16
Signed-off-by: Anthony G. Basile <blueness <AT> gentoo.org>

 sys-libs/uclibc-ng/Manifest                   |   2 -
 sys-libs/uclibc-ng/metadata.xml               |   1 -
 sys-libs/uclibc-ng/uclibc-ng-1.0.26.ebuild    | 411 --------------------------
 sys-libs/uclibc-ng/uclibc-ng-1.0.30-r1.ebuild | 405 -------------------------
 4 files changed, 819 deletions(-)

diff --git a/sys-libs/uclibc-ng/Manifest b/sys-libs/uclibc-ng/Manifest
index dd21e427d50..de7fae1db80 100644
--- a/sys-libs/uclibc-ng/Manifest
+++ b/sys-libs/uclibc-ng/Manifest
@@ -1,4 +1,2 @@
-DIST uClibc-ng-1.0.26.tar.bz2 2285709 BLAKE2B 6276f1d080f0c90b5a0ce4a4fc3556070852ad157b9c0a15305108b2f46a2d0f5371dde12ac0a8f05cad7db942cceb8057b5ef351e100a52609f2ebdc6b19634 SHA512 48c37ab2000af13848ef007ce89f226bded5188f37839c11371bab48497670d30d39fda2a031c6aff95f429a4abadc431ddd77c0e023810a341e2c2d2645f71b
-DIST uClibc-ng-1.0.30.tar.bz2 2302796 BLAKE2B 21888dfe5a68f83b7ba56bb557ecc5aa19fd75cedc82f2ed48073f47655888719feb27943e0309f8101a24fd2fd9165af31d5679f21c00b12f27ebfccf354bac SHA512 ddd1d91dcfdf7be8471afecf13196563ad348c41e2fa8b63ae50b83f103cf8ed8d9f003b51a54a58db2935b84692b7c011a4779582f30610ede44cb583aae742
 DIST uClibc-ng-1.0.31.tar.bz2 2351728 BLAKE2B e2cad8500fdafdd98db11cbc756f3277845fedf545598c9861b1d1ef51b3a24744afe635d6894929eb537891323b0627577c2a5e5dbe1ff0ae588c5aa53a1219 SHA512 489e5f5e8952ebfad1d8a5528a04420d9d2e58fa5092029ccdae91d81dfcf8b3e00092453432da94c76fc18cab542192040bfb271e367fa42ca4926f4b45c372
 DIST uClibc-ng-1.0.32.tar.bz2 2352471 BLAKE2B 887b67f7f03fc8610d8236a18f90584720a78bfc3a036cd6616453bea6e31140f5fd1dfd1d207cc5100854bf3e0c5cc1ca38fe6c31cf97b631892767ae23ec27 SHA512 1de5d4e99b94eeeada4233c53a95ea1b9e704ce1d4aa19ca9b17535c0328b2372ed93d24591c6ea5bfbc0b950aa575c18dcf6950fb04342924bb2b5f9ee235e8

diff --git a/sys-libs/uclibc-ng/metadata.xml b/sys-libs/uclibc-ng/metadata.xml
index 12420ae8d3b..a06e85b4368 100644
--- a/sys-libs/uclibc-ng/metadata.xml
+++ b/sys-libs/uclibc-ng/metadata.xml
@@ -15,7 +15,6 @@
 	also work perfectly with uClibc-ng.
 	</longdescription>
 	<use>
-		<flag name="rpc">Enable sun nis/rpc support (you should use libtirpc though)</flag>
 		<flag name="symlink-compat">Explicitly add sym links for libdl.so.0, libm.so.0, and
 		friends for backward compatibility with sys-libs/uclibc-ng-1.0.17 and earlier</flag>
 	</use>

diff --git a/sys-libs/uclibc-ng/uclibc-ng-1.0.26.ebuild b/sys-libs/uclibc-ng/uclibc-ng-1.0.26.ebuild
deleted file mode 100644
index 572b3800cec..00000000000
--- a/sys-libs/uclibc-ng/uclibc-ng-1.0.26.ebuild
+++ /dev/null
@@ -1,411 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit flag-o-matic multilib savedconfig toolchain-funcs versionator
-
-if [[ ${PV} == "9999" ]] ; then
-	EGIT_REPO_URI="git://uclibc-ng.org/git/uclibc-ng"
-	inherit git-r3
-	MY_P=uclibc-ng-${PV}
-else
-	MY_P=uClibc-ng-${PV}
-fi
-
-DESCRIPTION="C library for developing embedded Linux systems"
-HOMEPAGE="https://uclibc-ng.org/"
-if [[ ${PV} != "9999" ]] ; then
-	PATCH_VER=""
-	SRC_URI="https://downloads.uclibc-ng.org/releases/${PV}/${MY_P}.tar.bz2"
-	KEYWORDS="-* amd64 arm ~mips ~ppc x86"
-fi
-
-LICENSE="LGPL-2"
-SLOT="0"
-IUSE="debug hardened iconv ipv6 rpc symlink-compat headers-only"
-# tests fail due to unusual makefile
-RESTRICT="strip test"
-
-# 1) We can't upgrade from uclibc to uclibc-ng via a soft blocker since portage
-#    will delete the ld.so sym link prematurely and break the system. So we
-#    will hard block and give manual migration instructions.
-# 2) Currently uclibc and uclibc-ng's iconv are in bad shape.  We've been using
-#    the breakout library.  The disadvantage here is that we have to sprinkle
-#    LDFAGS=-liconv on build systems that need to link against libiconv.
-RDEPEND="
-	!!sys-libs/uclibc
-	iconv? ( dev-libs/libiconv )"
-
-S=${WORKDIR}/${MY_P}
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CHOST} == ${CTARGET} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-
-alt_build_kprefix() {
-	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]] ; then
-		echo /usr/include
-	else
-		echo /usr/${CTARGET}/usr/include
-	fi
-}
-
-just_headers() {
-	use headers-only && is_crosscompile
-}
-
-uclibc_endian() {
-	# XXX: this wont work for a toolchain which is bi-endian, but we
-	#      dont have any such thing at the moment, so not a big deal
-	touch "${T}"/endian.s
-	$(tc-getAS ${CTARGET}) "${T}"/endian.s -o "${T}"/endian.o
-	case $(file "${T}"/endian.o) in
-		*" MSB "*) echo "BIG";;
-		*" LSB "*) echo "LITTLE";;
-		*)         echo "NFC";;
-	esac
-	rm -f "${T}"/endian.{s,o}
-}
-
-kconfig_q_opt() {
-	local flag=$1; shift
-	case ${flag} in
-		y|n) ;;
-		*) flag=$(usex ${flag} y n) ;;
-	esac
-
-	local var="defs_${flag}"
-	eval "${var}+=( $* )"
-}
-
-get_opt() {
-	(
-	unset ${1}
-	. ${2:-"${S}"/.config}
-	echo ${!1}
-	)
-}
-
-make_oldconfig() {
-	yes "" 2>/dev/null | emake -s oldconfig >/dev/null
-}
-
-make_config() {
-	restore_config .config
-	if [ -f .config ]; then
-		make_oldconfig
-		return 0
-	else
-		ewarn "Could not locate user configfile, so we will save a default one"
-	fi
-
-	emake ARCH=$1 defconfig >/dev/null
-
-	local defs_{y,n}
-
-	# These are forced off
-	defs_n=(
-		DOASSERTS
-		DODEBUG_PT
-		HAS_NO_THREADS
-		PROPOLICE_BLOCK_ABRT
-		SSP_QUICK_CANARY
-		SUPPORT_LD_DEBUG_EARLY
-		UCLIBC_HAS_CTYPE_UNSAFE
-		UCLIBC_HAS_LOCALE
-		UCLIBC_HAS_SSP_COMPAT
-	)
-
-	# These are forced on
-	defs_y=(
-		COMPAT_ATEXIT
-		DO_C99_MATH
-		DO_XSI_MATH
-		FORCE_SHAREABLE_TEXT_SEGMENTS
-		LDSO_GNU_HASH_SUPPORT
-		LDSO_PRELINK_SUPPORT
-		LDSO_PRELOAD_FILE_SUPPORT
-		LDSO_RUNPATH_OF_EXECUTABLE
-		LDSO_STANDALONE_SUPPORT
-		MALLOC_GLIBC_COMPAT
-		PROPOLICE_BLOCK_SEGV
-		PTHREADS_DEBUG_SUPPORT
-		UCLIBC_HAS_ARC4RANDOM
-		UCLIBC_HAS_BACKTRACE
-		UCLIBC_HAS_BSD_RES_CLOSE
-		UCLIBC_HAS_CONTEXT_FUNCS
-		UCLIBC_HAS_CTYPE_CHECKED
-		UCLIBC_HAS_EXTRA_COMPAT_RES_STATE
-		UCLIBC_HAS_FENV
-		UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE
-		UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE
-		UCLIBC_HAS_FOPEN_LARGEFILE_MODE
-		UCLIBC_HAS_FTS
-		UCLIBC_HAS_FTW
-		UCLIBC_HAS_GETPT
-		UCLIBC_HAS_GLIBC_CUSTOM_PRINTF
-		UCLIBC_HAS_GLIBC_CUSTOM_STREAMS
-		UCLIBC_HAS_GNU_GLOB
-		UCLIBC_HAS_HEXADECIMAL_FLOATS
-		UCLIBC_HAS_LIBNSL_STUB
-		UCLIBC_HAS_LIBRESOLV_STUB
-		UCLIBC_HAS_LIBUTIL
-		UCLIBC_HAS_NFTW
-		UCLIBC_HAS_OBSOLETE_BSD_SIGNAL
-		UCLIBC_HAS_OBSTACK
-		UCLIBC_HAS_PRINTF_M_SPEC
-		UCLIBC_HAS_PROGRAM_INVOCATION_NAME
-		UCLIBC_HAS_RESOLVER_SUPPORT
-		UCLIBC_HAS_SHA256_CRYPT_IMPL
-		UCLIBC_HAS_SHA512_CRYPT_IMPL
-		UCLIBC_HAS_SSP
-		UCLIBC_HAS_STUBS
-		UCLIBC_HAS_SYS_ERRLIST
-		UCLIBC_HAS_SYS_SIGLIST
-		UCLIBC_HAS_THREADS_NATIVE
-		UCLIBC_HAS_TZ_FILE_READ_MANY
-		UCLIBC_HAS_UTMP
-		UCLIBC_HAS_UTMPX
-		UCLIBC_HAS_WCHAR
-		UCLIBC_HAS_WORDEXP
-		UCLIBC_NTP_LEGACY
-		UCLIBC_SUPPORT_AI_ADDRCONFIG
-		UCLIBC_SUSV2_LEGACY
-		UCLIBC_SUSV3_LEGACY
-		UCLIBC_SUSV3_LEGACY_MACROS
-		UCLIBC_SUSV4_LEGACY
-		UCLIBC_USE_NETLINK
-	)
-
-	sed -i -e '/ARCH_.*_ENDIAN/d' .config
-	kconfig_q_opt y "ARCH_WANTS_$(uclibc_endian)_ENDIAN"
-
-	kconfig_q_opt debug DODEBUG
-	kconfig_q_opt debug SUPPORT_LD_DEBUG
-	kconfig_q_opt debug UCLIBC_HAS_PROFILING
-
-	kconfig_q_opt ipv6 UCLIBC_HAS_IPV6
-
-	kconfig_q_opt rpc UCLIBC_HAS_RPC
-	kconfig_q_opt rpc UCLIBC_HAS_FULL_RPC
-	kconfig_q_opt rpc UCLIBC_HAS_REENTRANT_RPC
-
-	kconfig_q_opt hardened UCLIBC_BUILD_NOEXECSTACK
-	kconfig_q_opt hardened UCLIBC_BUILD_NOW
-	kconfig_q_opt hardened UCLIBC_BUILD_PIE
-	kconfig_q_opt hardened UCLIBC_BUILD_RELRO
-	kconfig_q_opt hardened UCLIBC_BUILD_SSP
-
-	local count def
-	for count in 1 2 ; do
-		# Run twice as some config opts depend on others being enabled first.
-		for def in ${defs_y[@]} ; do
-			sed -i -e "s|.*\<${def}\>.*set|${def}=y|g" .config
-		done
-		for def in ${defs_n[@]} ; do
-			sed -i -e "s|${def}=y|# ${def} is not set|g" .config
-		done
-		make_oldconfig
-	done
-
-	einfo "Enabled options:"
-	for def in ${defs_y[@]} ; do
-		einfo " " $(grep "^${def}=y" .config || echo "could not find ${def}")
-	done
-	einfo "Disabled options:"
-	for def in ${defs_n[@]} ; do
-		einfo " " $(grep "^# ${def} is not set" .config || echo "could not find ${def}")
-	done
-
-	# setup build and run paths
-	sed -i \
-		-e "/^CROSS_COMPILER_PREFIX/s|=.*|=\"${CTARGET}-\"|" \
-		-e "/^KERNEL_HEADERS/s|=.*|=\"$(alt_build_kprefix)\"|" \
-		-e "/^SHARED_LIB_LOADER_PREFIX/s|=.*|=\"/$(get_libdir)\"|" \
-		-e "/^DEVEL_PREFIX/s|=.*|=\"/usr\"|" \
-		-e "/^RUNTIME_PREFIX/s|=.*|=\"/\"|" \
-		-e "/^UCLIBC_EXTRA_CFLAGS/s|=.*|=\"${UCLIBC_EXTRA_CFLAGS}\"|" \
-		.config || die
-
-	make_oldconfig
-}
-
-pkg_setup() {
-	# Make sure our CHOST is a uclibc toolchain for native compiling
-	if [[ ${CHOST} == ${CTARGET} ]]; then
-		case ${CHOST} in
-			*-uclinux*|*-uclibc*) ;;
-			*) die "Use sys-devel/crossdev to build a uclibc toolchain" ;;
-		esac
-	fi
-
-	# uClibc-ng doesn't carry old Linux threads, and since we force
-	# threading our only choice is NPTL which requires i486 and later.
-	[[ ${CTARGET} == i386* ]] && die "i386 can't support Native Posix Threads (NPTL)."
-}
-
-src_prepare() {
-	local version subversion extraversion
-
-	# uclibc-ng tries to create a two sym link with ld.so,
-	# ld-uClibc.so.{0,MAJOR_VERSION} -> ld-uClibc-<version>.so
-	# where MAJOR_VERSION != 0 indicates the ABI verison.
-	# We want to get rid of this and just have ABI = 0.
-	eapply "${FILESDIR}"/uclibc-compat-r1.patch
-
-	# We need to change the major.minor.sublevel of uclibc-ng.
-	# Upstream sets MAJOR_VERSION = 1 which breaks runtime linking.
-	# If we really want the ABI bump, we'll have to hack the gcc
-	# spec file and change the '*link:' rule.
-	version=( $(get_version_components) )
-	if [[ -z ${version[1]} ]]; then
-		subversion=0
-		extraversion=0
-	else
-		subversion=${version[1]}
-		if [[ -z ${version[2]} ]]; then
-			extraversion=0
-		else
-			extraversion=.${version[2]}
-		fi
-	fi
-
-	sed -i \
-		-e "/^MAJOR_VERSION/s|:=.*|:= 0|" \
-		-e "/^MINOR_VERSION/s|:=.*|:= ${version[0]}|" \
-		-e "/^SUBLEVEL/s|:=.*|:= ${subversion}|" \
-		-e "/^EXTRAVERSION/s|:=.*|:= ${extraversion}|" \
-		Rules.mak || die
-
-	eapply_user
-}
-
-src_configure() {
-	# Map our toolchain arch name to the name expected by uClibc-ng.
-	local target=$(tc-arch)
-	case ${target} in
-		amd64) target="x86_64";;
-		arm)   target="arm";;
-		mips)  target="mips";;
-		ppc)   target="powerpc";;
-		x86)   target="i386";;
-	esac
-
-	# Do arch specific configuration by changing the defaults in
-	# extra/Configs/Config.<arch>.  If these are not overridden
-	# by an save .config, they will be selected by default.
-
-	# For i386, i486, i586 and i686
-	local cpu
-	if [[ ${target} == "i386" ]]; then
-		[[ ${CTARGET} == i[456]86* ]] && cpu="${CTARGET:1:1}86"
-		sed -i -e "s|default CONFIG_686|default CONFIG_${cpu:-486}|" \
-			extra/Configs/Config.i386 || die
-	fi
-
-	# For arm
-	if [[ ${target} == "arm" ]]; then
-		sed -i -e '/Build for EABI/a \\tdefault y' extra/Configs/Config.arm
-	fi
-
-	# We set HOSTCC to the proper tuple rather than just 'gcc'
-	sed -i -e "s|^HOSTCC.*=.*|HOSTCC=$(tc-getBUILD_CC)|" Rules.mak
-
-	make_config ${target}
-
-	einfo
-	einfo "Runtime Prefix: /"
-	einfo "Devel Prefix:   /usr"
-	einfo "Kernel Prefix:  $(alt_build_kprefix)"
-	einfo "CBUILD:         ${CBUILD}"
-	einfo "CHOST:          ${CHOST}"
-	einfo "CTARGET:        ${CTARGET}"
-	einfo "ABI:            ${ABI}"
-	einfo "ENDIAN:         $(uclibc_endian)"
-	einfo
-}
-
-src_compile() {
-	emake headers
-	just_headers && return 0
-
-	emake
-	if is_crosscompile ; then
-		emake -C utils hostutils
-	else
-		emake utils
-	fi
-}
-
-src_test() {
-	is_crosscompile && return 0
-
-	# assert test fails on pax/grsec enabled kernels
-	# normal vfork test fails in sandbox (both glibc/uclibc)
-	emake UCLIBC_ONLY=1 check
-}
-
-src_install() {
-	local sysroot=${D}
-	is_crosscompile && sysroot+="/usr/${CTARGET}"
-
-	local target="install"
-	just_headers && target="install_headers"
-	emake DESTDIR="${sysroot}" ${target}
-
-	save_config .config
-
-	# remove files coming from kernel-headers
-	rm -rf "${sysroot}"/usr/include/{linux,asm*}
-
-	# Make sure we install the sys-include symlink so that when
-	# we build a 2nd stage cross-compiler, gcc finds the target
-	# system headers correctly.  See gcc/doc/gccinstall.info
-	if is_crosscompile ; then
-		dosym usr/include /usr/${CTARGET}/sys-include
-		if ! just_headers && [[ -n $(get_opt HAVE_SHARED) ]] ; then
-			newbin utils/ldconfig.host ${CTARGET}-ldconfig
-			newbin utils/ldd.host ${CTARGET}-ldd
-		fi
-		return 0
-	fi
-
-	if use symlink-compat; then
-		dosym libc.so.0 "${DESTDIR}"/lib/libcrypt.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libdl.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libm.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libpthread.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/librt.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libresolv.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libubacktrace.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libutil.so.0
-	fi
-
-	emake DESTDIR="${D}" install_utils
-	dobin extra/scripts/getent
-	dodoc README docs/*.txt
-}
-
-pkg_postinst() {
-	is_crosscompile && return 0
-
-	if [ ! -e "${ROOT}"/etc/TZ ] ; then
-		ewarn "Please remember to set your timezone in /etc/TZ"
-		mkdir -p "${ROOT}"/etc
-		echo "UTC" > "${ROOT}"/etc/TZ
-	fi
-	[ "${ROOT}" != "/" ] && return 0
-	# update cache before reloading init
-	ldconfig
-	# reload init ...
-	/sbin/telinit U 2>/dev/null
-}

diff --git a/sys-libs/uclibc-ng/uclibc-ng-1.0.30-r1.ebuild b/sys-libs/uclibc-ng/uclibc-ng-1.0.30-r1.ebuild
deleted file mode 100644
index c7b7bac0f3e..00000000000
--- a/sys-libs/uclibc-ng/uclibc-ng-1.0.30-r1.ebuild
+++ /dev/null
@@ -1,405 +0,0 @@
-# Copyright 1999-2018 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI="6"
-
-inherit flag-o-matic multilib savedconfig toolchain-funcs versionator
-
-if [[ ${PV} == "9999" ]] ; then
-	EGIT_REPO_URI="git://uclibc-ng.org/git/uclibc-ng"
-	inherit git-r3
-	MY_P=uclibc-ng-${PV}
-else
-	MY_P=uClibc-ng-${PV}
-fi
-
-DESCRIPTION="C library for developing embedded Linux systems"
-HOMEPAGE="https://uclibc-ng.org/"
-if [[ ${PV} != "9999" ]] ; then
-	PATCH_VER=""
-	SRC_URI="https://downloads.uclibc-ng.org/releases/${PV}/${MY_P}.tar.bz2"
-	KEYWORDS="-* amd64 arm ~mips ppc x86"
-fi
-
-LICENSE="LGPL-2"
-SLOT="0"
-IUSE="debug hardened iconv ipv6 symlink-compat headers-only"
-# tests fail due to unusual makefile
-RESTRICT="strip test"
-
-# 1) We can't upgrade from uclibc to uclibc-ng via a soft blocker since portage
-#    will delete the ld.so sym link prematurely and break the system. So we
-#    will hard block and give manual migration instructions.
-# 2) Currently uclibc and uclibc-ng's iconv are in bad shape.  We've been using
-#    the breakout library.  The disadvantage here is that we have to sprinkle
-#    LDFAGS=-liconv on build systems that need to link against libiconv.
-RDEPEND="
-	!!sys-libs/uclibc
-	iconv? ( dev-libs/libiconv )"
-
-S=${WORKDIR}/${MY_P}
-
-export CBUILD=${CBUILD:-${CHOST}}
-export CTARGET=${CTARGET:-${CHOST}}
-if [[ ${CHOST} == ${CTARGET} ]] ; then
-	if [[ ${CATEGORY} == cross-* ]] ; then
-		export CTARGET=${CATEGORY#cross-}
-	fi
-fi
-
-is_crosscompile() {
-	[[ ${CHOST} != ${CTARGET} ]]
-}
-
-alt_build_kprefix() {
-	if [[ ${CBUILD} == ${CHOST} && ${CHOST} == ${CTARGET} ]] ; then
-		echo /usr/include
-	else
-		echo /usr/${CTARGET}/usr/include
-	fi
-}
-
-just_headers() {
-	use headers-only && is_crosscompile
-}
-
-uclibc_endian() {
-	# XXX: this wont work for a toolchain which is bi-endian, but we
-	#      dont have any such thing at the moment, so not a big deal
-	touch "${T}"/endian.s
-	$(tc-getAS ${CTARGET}) "${T}"/endian.s -o "${T}"/endian.o
-	case $(file "${T}"/endian.o) in
-		*" MSB "*) echo "BIG";;
-		*" LSB "*) echo "LITTLE";;
-		*)         echo "NFC";;
-	esac
-	rm -f "${T}"/endian.{s,o}
-}
-
-kconfig_q_opt() {
-	local flag=$1; shift
-	case ${flag} in
-		y|n) ;;
-		*) flag=$(usex ${flag} y n) ;;
-	esac
-
-	local var="defs_${flag}"
-	eval "${var}+=( $* )"
-}
-
-get_opt() {
-	(
-	unset ${1}
-	. ${2:-"${S}"/.config}
-	echo ${!1}
-	)
-}
-
-make_oldconfig() {
-	yes "" 2>/dev/null | emake -s oldconfig >/dev/null
-}
-
-make_config() {
-	restore_config .config
-	if [ -f .config ]; then
-		make_oldconfig
-		return 0
-	else
-		ewarn "Could not locate user configfile, so we will save a default one"
-	fi
-
-	emake ARCH=$1 defconfig >/dev/null
-
-	local defs_{y,n}
-
-	# These are forced off
-	defs_n=(
-		DOASSERTS
-		DODEBUG_PT
-		HAS_NO_THREADS
-		PROPOLICE_BLOCK_ABRT
-		SSP_QUICK_CANARY
-		SUPPORT_LD_DEBUG_EARLY
-		UCLIBC_HAS_CTYPE_UNSAFE
-		UCLIBC_HAS_LOCALE
-		LDSO_SAFE_RUNPATH
-	)
-
-	# These are forced on
-	defs_y=(
-		DO_C99_MATH
-		DO_XSI_MATH
-		FORCE_SHAREABLE_TEXT_SEGMENTS
-		LDSO_GNU_HASH_SUPPORT
-		LDSO_PRELOAD_FILE_SUPPORT
-		LDSO_RUNPATH
-		LDSO_RUNPATH_OF_EXECUTABLE
-		LDSO_STANDALONE_SUPPORT
-		PROPOLICE_BLOCK_SEGV
-		PTHREADS_DEBUG_SUPPORT
-		UCLIBC_HAS_ARC4RANDOM
-		UCLIBC_HAS_BACKTRACE
-		UCLIBC_HAS_BSD_RES_CLOSE
-		UCLIBC_HAS_CONTEXT_FUNCS
-		UCLIBC_HAS_CTYPE_CHECKED
-		UCLIBC_HAS_EXTRA_COMPAT_RES_STATE
-		UCLIBC_HAS_FENV
-		UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE
-		UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE
-		UCLIBC_HAS_FOPEN_LARGEFILE_MODE
-		UCLIBC_HAS_FTS
-		UCLIBC_HAS_FTW
-		UCLIBC_HAS_GETPT
-		UCLIBC_HAS_GLIBC_CUSTOM_PRINTF
-		UCLIBC_HAS_GLIBC_CUSTOM_STREAMS
-		UCLIBC_HAS_GNU_GLOB
-		UCLIBC_HAS_HEXADECIMAL_FLOATS
-		UCLIBC_HAS_LIBUTIL
-		UCLIBC_HAS_NFTW
-		UCLIBC_HAS_OBSOLETE_BSD_SIGNAL
-		UCLIBC_HAS_PRINTF_M_SPEC
-		UCLIBC_HAS_PROGRAM_INVOCATION_NAME
-		UCLIBC_HAS_RESOLVER_SUPPORT
-		UCLIBC_HAS_SHA256_CRYPT_IMPL
-		UCLIBC_HAS_SHA512_CRYPT_IMPL
-		UCLIBC_HAS_SSP
-		UCLIBC_HAS_STUBS
-		UCLIBC_HAS_SYS_ERRLIST
-		UCLIBC_HAS_SYS_SIGLIST
-		UCLIBC_HAS_THREADS_NATIVE
-		UCLIBC_HAS_TZ_FILE_READ_MANY
-		UCLIBC_HAS_UTMP
-		UCLIBC_HAS_UTMPX
-		UCLIBC_HAS_WCHAR
-		UCLIBC_HAS_WORDEXP
-		UCLIBC_NTP_LEGACY
-		UCLIBC_SUPPORT_AI_ADDRCONFIG
-		UCLIBC_SUSV2_LEGACY
-		UCLIBC_SUSV3_LEGACY
-		UCLIBC_SUSV3_LEGACY_MACROS
-		UCLIBC_SUSV4_LEGACY
-		UCLIBC_USE_NETLINK
-	)
-
-	sed -i -e '/ARCH_.*_ENDIAN/d' .config
-	kconfig_q_opt y "ARCH_WANTS_$(uclibc_endian)_ENDIAN"
-
-	kconfig_q_opt debug DODEBUG
-	kconfig_q_opt debug SUPPORT_LD_DEBUG
-	kconfig_q_opt debug UCLIBC_HAS_PROFILING
-
-	kconfig_q_opt ipv6 UCLIBC_HAS_IPV6
-
-	kconfig_q_opt hardened UCLIBC_BUILD_NOEXECSTACK
-	kconfig_q_opt hardened UCLIBC_BUILD_NOW
-	kconfig_q_opt hardened UCLIBC_BUILD_PIE
-	kconfig_q_opt hardened UCLIBC_BUILD_RELRO
-	kconfig_q_opt hardened UCLIBC_BUILD_SSP
-
-	local count def
-	for count in 1 2 ; do
-		# Run twice as some config opts depend on others being enabled first.
-		for def in ${defs_y[@]} ; do
-			sed -i -e "s|.*\<${def}\>.*set|${def}=y|g" .config
-		done
-		for def in ${defs_n[@]} ; do
-			sed -i -e "s|${def}=y|# ${def} is not set|g" .config
-		done
-		make_oldconfig
-	done
-
-	einfo "Enabled options:"
-	for def in ${defs_y[@]} ; do
-		einfo " " $(grep "^${def}=y" .config || echo "could not find ${def}")
-	done
-	einfo "Disabled options:"
-	for def in ${defs_n[@]} ; do
-		einfo " " $(grep "^# ${def} is not set" .config || echo "could not find ${def}")
-	done
-
-	# setup build and run paths
-	sed -i \
-		-e "/^CROSS_COMPILER_PREFIX/s|=.*|=\"${CTARGET}-\"|" \
-		-e "/^KERNEL_HEADERS/s|=.*|=\"$(alt_build_kprefix)\"|" \
-		-e "/^SHARED_LIB_LOADER_PREFIX/s|=.*|=\"/$(get_libdir)\"|" \
-		-e "/^DEVEL_PREFIX/s|=.*|=\"/usr\"|" \
-		-e "/^RUNTIME_PREFIX/s|=.*|=\"/\"|" \
-		-e "/^UCLIBC_EXTRA_CFLAGS/s|=.*|=\"${UCLIBC_EXTRA_CFLAGS}\"|" \
-		.config || die
-
-	make_oldconfig
-}
-
-pkg_setup() {
-	# Make sure our CHOST is a uclibc toolchain for native compiling
-	if [[ ${CHOST} == ${CTARGET} ]]; then
-		case ${CHOST} in
-			*-uclinux*|*-uclibc*) ;;
-			*) die "Use sys-devel/crossdev to build a uclibc toolchain" ;;
-		esac
-	fi
-
-	# uClibc-ng doesn't carry old Linux threads, and since we force
-	# threading our only choice is NPTL which requires i486 and later.
-	[[ ${CTARGET} == i386* ]] && die "i386 can't support Native Posix Threads (NPTL)."
-}
-
-src_prepare() {
-	local version subversion extraversion
-
-	# uclibc-ng tries to create a two sym link with ld.so,
-	# ld-uClibc.so.{0,MAJOR_VERSION} -> ld-uClibc-<version>.so
-	# where MAJOR_VERSION != 0 indicates the ABI verison.
-	# We want to get rid of this and just have ABI = 0.
-	eapply "${FILESDIR}"/uclibc-compat-r1.patch
-
-	# Critical fix for ld.so.cache
-	eapply "${FILESDIR}"/${P}-fix-ld.so.cache.patch
-
-	# We need to change the major.minor.sublevel of uclibc-ng.
-	# Upstream sets MAJOR_VERSION = 1 which breaks runtime linking.
-	# If we really want the ABI bump, we'll have to hack the gcc
-	# spec file and change the '*link:' rule.
-	version=( $(get_version_components) )
-	if [[ -z ${version[1]} ]]; then
-		subversion=0
-		extraversion=0
-	else
-		subversion=${version[1]}
-		if [[ -z ${version[2]} ]]; then
-			extraversion=0
-		else
-			extraversion=.${version[2]}
-		fi
-	fi
-
-	sed -i \
-		-e "/^MAJOR_VERSION/s|:=.*|:= 0|" \
-		-e "/^MINOR_VERSION/s|:=.*|:= ${version[0]}|" \
-		-e "/^SUBLEVEL/s|:=.*|:= ${subversion}|" \
-		-e "/^EXTRAVERSION/s|:=.*|:= ${extraversion}|" \
-		Rules.mak || die
-
-	eapply_user
-}
-
-src_configure() {
-	# Map our toolchain arch name to the name expected by uClibc-ng.
-	local target=$(tc-arch)
-	case ${target} in
-		amd64) target="x86_64";;
-		arm)   target="arm";;
-		mips)  target="mips";;
-		ppc)   target="powerpc";;
-		x86)   target="i386";;
-	esac
-
-	# Do arch specific configuration by changing the defaults in
-	# extra/Configs/Config.<arch>.  If these are not overridden
-	# by an save .config, they will be selected by default.
-
-	# For i386, i486, i586 and i686
-	local cpu
-	if [[ ${target} == "i386" ]]; then
-		[[ ${CTARGET} == i[456]86* ]] && cpu="${CTARGET:1:1}86"
-		sed -i -e "s|default CONFIG_686|default CONFIG_${cpu:-486}|" \
-			extra/Configs/Config.i386 || die
-	fi
-
-	# For arm
-	if [[ ${target} == "arm" ]]; then
-		sed -i -e '/Build for EABI/a \\tdefault y' extra/Configs/Config.arm
-	fi
-
-	# We set HOSTCC to the proper tuple rather than just 'gcc'
-	sed -i -e "s|^HOSTCC.*=.*|HOSTCC=$(tc-getBUILD_CC)|" Rules.mak
-
-	make_config ${target}
-
-	einfo
-	einfo "Runtime Prefix: /"
-	einfo "Devel Prefix:   /usr"
-	einfo "Kernel Prefix:  $(alt_build_kprefix)"
-	einfo "CBUILD:         ${CBUILD}"
-	einfo "CHOST:          ${CHOST}"
-	einfo "CTARGET:        ${CTARGET}"
-	einfo "ABI:            ${ABI}"
-	einfo "ENDIAN:         $(uclibc_endian)"
-	einfo
-}
-
-src_compile() {
-	emake headers
-	just_headers && return 0
-
-	emake
-	if is_crosscompile ; then
-		emake -C utils hostutils
-	else
-		emake utils
-	fi
-}
-
-src_test() {
-	is_crosscompile && return 0
-
-	# assert test fails on pax/grsec enabled kernels
-	# normal vfork test fails in sandbox (both glibc/uclibc)
-	emake UCLIBC_ONLY=1 check
-}
-
-src_install() {
-	local sysroot=${D}
-	is_crosscompile && sysroot+="/usr/${CTARGET}"
-
-	local target="install"
-	just_headers && target="install_headers"
-	emake DESTDIR="${sysroot}" ${target}
-
-	save_config .config
-
-	# remove files coming from kernel-headers
-	rm -rf "${sysroot}"/usr/include/{linux,asm*}
-
-	# Make sure we install the sys-include symlink so that when
-	# we build a 2nd stage cross-compiler, gcc finds the target
-	# system headers correctly.  See gcc/doc/gccinstall.info
-	if is_crosscompile ; then
-		dosym usr/include /usr/${CTARGET}/sys-include
-		if ! just_headers && [[ -n $(get_opt HAVE_SHARED) ]] ; then
-			newbin utils/ldconfig.host ${CTARGET}-ldconfig
-			newbin utils/ldd.host ${CTARGET}-ldd
-		fi
-		return 0
-	fi
-
-	if use symlink-compat; then
-		dosym libc.so.0 "${DESTDIR}"/lib/libcrypt.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libdl.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libm.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libpthread.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/librt.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libresolv.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libubacktrace.so.0
-		dosym libc.so.0 "${DESTDIR}"/lib/libutil.so.0
-	fi
-
-	emake DESTDIR="${D}" install_utils
-	dobin extra/scripts/getent
-	dodoc README docs/*.txt
-}
-
-pkg_postinst() {
-	is_crosscompile && return 0
-
-	if [ ! -e "${ROOT}"/etc/TZ ] ; then
-		ewarn "Please remember to set your timezone in /etc/TZ"
-		mkdir -p "${ROOT}"/etc
-		echo "UTC" > "${ROOT}"/etc/TZ
-	fi
-	[ "${ROOT}" != "/" ] && return 0
-	# update cache before reloading init
-	ldconfig
-	# reload init ...
-	/sbin/telinit U 2>/dev/null
-}


             reply	other threads:[~2019-10-27  2:13 UTC|newest]

Thread overview: 70+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-10-27  2:13 Anthony G. Basile [this message]
  -- strict thread matches above, loose matches on Subject: below --
2020-09-04 16:50 [gentoo-commits] repo/gentoo:master commit in: sys-libs/uclibc-ng/ Anthony G. Basile
2020-05-30 15:34 Anthony G. Basile
2020-05-06  1:44 Anthony G. Basile
2020-04-24 18:44 Anthony G. Basile
2020-04-24 16:18 Anthony G. Basile
2020-04-24 16:18 Anthony G. Basile
2020-02-02 13:04 Sergei Trofimovich
2020-01-15  0:31 Anthony G. Basile
2020-01-14 22:26 Anthony G. Basile
2020-01-14 20:10 Anthony G. Basile
2019-11-18 13:38 Anthony G. Basile
2019-11-17 16:29 Anthony G. Basile
2019-10-27  2:13 Anthony G. Basile
2018-12-31 18:24 Anthony G. Basile
2018-12-31 17:55 Anthony G. Basile
2018-12-02 12:22 Sergei Trofimovich
2018-11-17 12:46 Anthony G. Basile
2018-10-04 21:41 Anthony G. Basile
2018-06-09 23:56 Anthony G. Basile
2018-05-16  8:41 Anthony G. Basile
2018-04-29 19:47 Anthony G. Basile
2018-04-28 20:52 Anthony G. Basile
2018-04-11  9:40 David Seifert
2018-03-09 22:57 Anthony G. Basile
2018-03-04  1:54 Anthony G. Basile
2018-03-04  1:51 Anthony G. Basile
2018-03-03 20:50 Anthony G. Basile
2018-01-26 19:33 Anthony G. Basile
2018-01-11  2:08 Anthony G. Basile
2018-01-07 19:39 Sergei Trofimovich
2017-11-28 22:07 Anthony G. Basile
2017-11-28 22:02 Anthony G. Basile
2017-11-14 15:33 Anthony G. Basile
2017-09-21 14:03 Anthony G. Basile
2017-08-10 10:04 Anthony G. Basile
2017-08-06 11:33 Anthony G. Basile
2017-08-04 20:25 Anthony G. Basile
2017-07-21 11:14 Anthony G. Basile
2017-07-09 14:40 Anthony G. Basile
2017-06-12 21:47 Anthony G. Basile
2017-06-07 10:22 Anthony G. Basile
2017-05-25 16:55 Anthony G. Basile
2017-04-25 22:48 Anthony G. Basile
2017-04-23 11:59 Anthony G. Basile
2017-04-04  2:03 Anthony G. Basile
2017-04-04  1:59 Anthony G. Basile
2017-03-19 15:39 Anthony G. Basile
2017-02-18 20:52 Anthony G. Basile
2017-02-08 15:22 Anthony G. Basile
2016-12-28  9:28 Anthony G. Basile
2016-12-26 15:49 Anthony G. Basile
2016-12-05 22:45 Anthony G. Basile
2016-12-02  1:23 Anthony G. Basile
2016-10-30 22:57 Anthony G. Basile
2016-10-30  9:41 Anthony G. Basile
2016-10-03  0:00 Anthony G. Basile
2016-08-13 13:57 Anthony G. Basile
2016-08-08  1:13 Anthony G. Basile
2016-08-01 22:43 Anthony G. Basile
2016-07-28  3:12 Anthony G. Basile
2016-07-18 16:00 Anthony G. Basile
2016-07-14 13:28 Anthony G. Basile
2016-07-08  8:54 Anthony G. Basile
2016-07-08  8:54 Anthony G. Basile
2016-07-08  8:54 Anthony G. Basile
2016-07-02 22:39 Anthony G. Basile
2016-05-29 23:10 Anthony G. Basile
2016-04-18 23:00 Anthony G. Basile
2016-04-13  8:34 Anthony G. Basile

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1572142377.66063d78eafb7cd8b3d9f09aaad789d531f6f70d.blueness@gentoo \
    --to=blueness@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox