aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAvatar Benedikt Morbach <moben@exherbo.org> 2015-03-08 18:15:53 +0100
committerAvatar Gerrit Code Review <tomcat@galileo.mailstation.de> 2015-05-21 01:54:51 +0200
commit56bc0c7ce91f79ae382dbaace8c9e4f83e2471f4 (patch)
tree0be62d0ce2e601fc01300ff1a90a0d58ac873731
parent3d8736ae8c27617237c86a1239ee6d6d32f8fa26 (diff)
downloadpaludis-56bc0c7ce91f79ae382dbaace8c9e4f83e2471f4.tar.gz
paludis-56bc0c7ce91f79ae382dbaace8c9e4f83e2471f4.tar.xz
ban dosbin, heresbin and newsbin on cross
we merge sbin into bin now Change-Id: I40f01ec0a003930920be3854cf9d1592997a8e31
-rw-r--r--paludis/repositories/e/ebuild/utils/exheres-0/Makefile.am2
-rwxr-xr-xpaludis/repositories/e/ebuild/utils/exheres-0/banned_in_eapi_exheres-017
-rwxr-xr-xpaludis/repositories/e/ebuild/utils/exheres-0/dosbin53
-rwxr-xr-xpaludis/repositories/e/ebuild/utils/exheres-0/heresbin5
-rwxr-xr-xpaludis/repositories/e/ebuild/utils/exheres-0/newsbin48
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 31fbf33..6b3156f 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 dcf2488..62e547d 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 0000000..69c0a75
--- /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 65a6a63..94dfcef 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 0000000..779000a
--- /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}"