diff options
author | 2015-03-08 18:15:53 +0100 | |
---|---|---|
committer | 2015-05-21 01:54:51 +0200 | |
commit | 56bc0c7ce91f79ae382dbaace8c9e4f83e2471f4 (patch) | |
tree | 0be62d0ce2e601fc01300ff1a90a0d58ac873731 | |
parent | 3d8736ae8c27617237c86a1239ee6d6d32f8fa26 (diff) | |
download | paludis-56bc0c7ce91f79ae382dbaace8c9e4f83e2471f4.tar.gz paludis-56bc0c7ce91f79ae382dbaace8c9e4f83e2471f4.tar.xz |
ban dosbin, heresbin and newsbin on cross
we merge sbin into bin now
Change-Id: I40f01ec0a003930920be3854cf9d1592997a8e31
5 files changed, 119 insertions, 6 deletions
diff --git a/paludis/repositories/e/ebuild/utils/exheres-0/Makefile.am b/paludis/repositories/e/ebuild/utils/exheres-0/Makefile.am index 31fbf33ed..6b3156f67 100644 --- a/paludis/repositories/e/ebuild/utils/exheres-0/Makefile.am +++ b/paludis/repositories/e/ebuild/utils/exheres-0/Makefile.am @@ -8,6 +8,7 @@ libexecprog_SCRIPTS = \ dohard \ dohtml \ dolib \ + dosbin \ dosed \ donewins \ emake \ @@ -19,6 +20,7 @@ libexecprog_SCRIPTS = \ hereinitd \ hereins \ heresbin \ + newsbin \ nonfatal \ prepall \ prepallstrip \ diff --git a/paludis/repositories/e/ebuild/utils/exheres-0/banned_in_eapi_exheres-0 b/paludis/repositories/e/ebuild/utils/exheres-0/banned_in_eapi_exheres-0 index dcf2488a6..62e547d14 100755 --- a/paludis/repositories/e/ebuild/utils/exheres-0/banned_in_eapi_exheres-0 +++ b/paludis/repositories/e/ebuild/utils/exheres-0/banned_in_eapi_exheres-0 @@ -17,12 +17,17 @@ # this program; if not, write to the Free Software Foundation, Inc., 59 Temple # Place, Suite 330, Boston, MA 02111-1307 USA -COLOUR_RED=$'\e[31;01m' -COLOUR_NORMAL=$'\e[0m' +die_because_banned_in_eapi_exheres-0() { + COLOUR_RED=$'\e[31;01m' + COLOUR_NORMAL=$'\e[0m' -echo "${COLOUR_RED}!!! Ebuild bug: '$(basename ${0} )' banned in EAPI exheres-0${COLOUR_NORMAL}" -echo "$(basename ${0} ): making ebuild PID ${EBUILD_KILL_PID} exit with error" 1>&2 -kill -s SIGUSR1 "${EBUILD_KILL_PID}" + echo "${COLOUR_RED}!!! Exheres bug: '$(basename ${0} )' banned in EAPI exheres-0${COLOUR_NORMAL}" + echo "$(basename ${0} ): making exheres PID ${EBUILD_KILL_PID} exit with error" 1>&2 + kill -s SIGUSR1 "${EBUILD_KILL_PID}" -exit 123 + exit 123 +} + +# die if called directly, but not if sourced +return 2> /dev/null || die_because_banned_in_eapi_exheres-0 diff --git a/paludis/repositories/e/ebuild/utils/exheres-0/dosbin b/paludis/repositories/e/ebuild/utils/exheres-0/dosbin new file mode 100755 index 000000000..69c0a7592 --- /dev/null +++ b/paludis/repositories/e/ebuild/utils/exheres-0/dosbin @@ -0,0 +1,53 @@ +#!/usr/bin/env bash +# vim: set sw=4 sts=4 et : + +# Copyright (c) 2006 Stephen Bennett +# +# Based in part upon dosbin from Portage, which is Copyright 1995-2005 +# Gentoo Foundation and distributed under the terms of the GNU General +# Public License v2. +# +# This file is part of the Paludis package manager. Paludis is free software; +# you can redistribute it and/or modify it under the terms of the GNU General +# Public License as published by the Free Software Foundation; either version +# 2 of the License, or (at your option) any later version. +# +# Paludis is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along with +# this program; if not, write to the Free Software Foundation, Inc., 59 Temple +# Place, Suite 330, Boston, MA 02111-1307 USA + +source "${PALUDIS_EBUILD_DIR}"/die_functions.bash + +if [[ ${FILESYSTEM_LAYOUT} == cross ]]; then + source "${PALUDIS_EBUILD_DIR}"/utils/exheres-0/banned_in_eapi_exheres-0 + die_because_banned_in_eapi_exheres-0 +fi + +if [[ ! -d ${!PALUDIS_IMAGE_DIR_VAR} ]]; then + paludis_die_or_error "\${${PALUDIS_IMAGE_DIR_VAR}} not valid; aborting" +fi + +if [[ ${#} -lt 1 ]]; then + paludis_die_or_error "at least one argument needed" +fi + +if [[ ! -d "${!PALUDIS_IMAGE_DIR_VAR}${DESTTREE}/sbin" ]]; then + install -d "${!PALUDIS_IMAGE_DIR_VAR}${DESTTREE}/sbin" || paludis_die_or_error "could not create ${!PALUDIS_IMAGE_DIR_VAR}${DESTTREE}/sbin" +fi + +ret=0 +for x in "$@"; do + if [[ -n ${PALUDIS_NO_CHOWN} ]]; then + install -m0755 "${x}" "${!PALUDIS_IMAGE_DIR_VAR}${DESTTREE}/sbin" || ret=2 + else + install -m0755 -o root -g 0 "${x}" "${!PALUDIS_IMAGE_DIR_VAR}${DESTTREE}/sbin" || ret=2 + fi +done + +[[ 0 != "${ret}" ]] && paludis_die_or_error "dosbin returned error ${ret}" +exit ${ret} diff --git a/paludis/repositories/e/ebuild/utils/exheres-0/heresbin b/paludis/repositories/e/ebuild/utils/exheres-0/heresbin index 65a6a636b..94dfcef51 100755 --- a/paludis/repositories/e/ebuild/utils/exheres-0/heresbin +++ b/paludis/repositories/e/ebuild/utils/exheres-0/heresbin @@ -19,6 +19,11 @@ source "${PALUDIS_EBUILD_DIR}"/die_functions.bash +if [[ ${FILESYSTEM_LAYOUT} == cross ]]; then + source "${PALUDIS_EBUILD_DIR}"/utils/exheres-0/banned_in_eapi_exheres-0 + die_because_banned_in_eapi_exheres-0 +fi + if [[ ! -d ${!PALUDIS_TEMP_DIR_VAR} ]]; then paludis_die_or_error "\${${PALUDIS_TEMP_DIR_VAR}} not valid; aborting" fi diff --git a/paludis/repositories/e/ebuild/utils/exheres-0/newsbin b/paludis/repositories/e/ebuild/utils/exheres-0/newsbin new file mode 100755 index 000000000..779000a1c --- /dev/null +++ b/paludis/repositories/e/ebuild/utils/exheres-0/newsbin @@ -0,0 +1,48 @@ +#!/usr/bin/env bash +# vim: set sw=4 sts=4 et : + +# Copyright (c) 2006 Stephen Bennett +# +# Based in part upon newsbin from Portage, which is Copyright 1995-2005 +# Gentoo Foundation and distributed under the terms of the GNU General +# Public License v2. +# +# This file is part of the Paludis package manager. Paludis is free software; +# you can redistribute it and/or modify it under the terms of the GNU General +# Public License as published by the Free Software Foundation; either version +# 2 of the License, or (at your option) any later version. +# +# Paludis is distributed in the hope that it will be useful, but WITHOUT ANY +# WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more +# details. +# +# You should have received a copy of the GNU General Public License along with +# this program; if not, write to the Free Software Foundation, Inc., 59 Temple +# Place, Suite 330, Boston, MA 02111-1307 USA + +source "${PALUDIS_EBUILD_DIR}"/die_functions.bash + +if [[ ${FILESYSTEM_LAYOUT} == cross ]]; then + source "${PALUDIS_EBUILD_DIR}"/utils/exheres-0/banned_in_eapi_exheres-0 + die_because_banned_in_eapi_exheres-0 +fi + +if [[ ! -d ${!PALUDIS_TEMP_DIR_VAR} ]]; then + paludis_die_or_error "\${${PALUDIS_TEMP_DIR_VAR}} not valid; aborting" +fi + +if [[ ${#} -ne 2 ]]; then + paludis_die_or_error "exactly two arguments needed" +fi + +rm -rf "${!PALUDIS_TEMP_DIR_VAR}/${2}" + +if [[ ${1} == - && -n ${PALUDIS_NEW_STDIN} ]]; then + [[ -t 0 ]] && paludis_die_or_error "requires stdin input" + cat > "${!PALUDIS_TEMP_DIR_VAR}/${2}" +else + cp "${1}" "${!PALUDIS_TEMP_DIR_VAR}/${2}" +fi + +dosbin "${!PALUDIS_TEMP_DIR_VAR}/${2}" |