--- smage/trunk/include/alx-split.sminc 2011/08/29 20:03:18 2792 +++ smage/trunk/include/alx-split.sminc 2015/07/30 15:49:15 6979 @@ -11,7 +11,7 @@ # zap in normal packages ALX_ZAPMOST_OPTS="" -# delete from dev packages +# delete from normal packages ALX_RM_OPTS="usr/$(mlibdir)/*.a usr/$(mlibdir)/*.la usr/$(mlibdir)/pkgconfig @@ -22,56 +22,49 @@ usr/share/man usr/include" -# zap in normal packages +# zap in dev packages ALX_DEV_ZAPMOST_OPTS="" # delete from dev packages -ALX_DEV_RM_OPTS="$(mlibdir)/*.so - $(mlibdir)/*.so.* - usr/$(mlibdir)/*.so - usr/$(mlibdir)/*.so.*" +ALX_DEV_RM_OPTS="" -# alx keeps +# be backward compatible if [[ ! -z ${ALX_ONLY_KEEP} ]] then - ALX_ZAPMOST_OPTS+=" ${ALX_ONLY_KEEP}" - ALX_DEV_RM_OPTS+=" ${ALX_ONLY_KEEP}" + ALX_PKG_KEEP="${ALX_ONLY_KEEP}" + echo -e "${COLYELLOW}Warning: 'ALX_ONLY_KEEP' is deprecated and gets removed in the future.${COLDEFAULT}" + echo -e "${COLYELLOW} Please modify this smage2 script to use the 'ALX_PKG_KEEP' variable.${COLDEFAULT}" + unset ALX_ONLY_KEEP fi - -# alx dev keeps if [[ ! -z ${ALX_DEV_ONLY_KEEP} ]] then - ALX_DEV_ZAPMOST_OPTS+=" ${ALX_DEV_ONLY_KEEP}" - ALX_RM_OPTS+=" ${ALX_DEV_ONLY_KEEP}" + ALX_DEV_PKG_KEEP="${ALX_DEV_ONLY_KEEP}" + echo -e "${COLYELLOW}Warning: 'ALX_DEV_ONLY_KEEP' is deprecated and gets removed in the future.${COLDEFAULT}" + echo -e "${COLYELLOW} Please modify this smage2 script to use the 'ALX_DEV_PKG_KEEP' variable.${COLDEFAULT}" + unset ALX_DEV_ONLY_KEEP fi -SPECIAL_FUNCTIONS="${SPECIAL_FUNCTIONS} alx-split_postinstall" - -alx-split_postinstall() -{ - local target - - case ${REMOVE_DEPRECATED_MAGE_TARGETS} in - 1|yes|true|TRUE) - for target in ${DEPRECATED_MAGE_TARGETS} - do - # first try to remove split_package_base target - if [[ ! -z $(magequery -n ${SPLIT_PACKAGE_BASE}-${target}) ]] - then - echo "removing deprecated mage-target '${SPLIT_PACKAGE_BASE}-${target}'" - mage uninstall ${SPLIT_PACKAGE_BASE}-${target} || die - fi +# alx keeps +if [[ ! -z ${ALX_PKG_KEEP} ]] +then + ALX_ZAPMOST_OPTS+=" ${ALX_PKG_KEEP}" + ALX_DEV_RM_OPTS+=" ${ALX_PKG_KEEP}" +else + ALX_RM_OPTS+=" $(mlibdir)/*.so + usr/$(mlibdir)/*.so + $([[ $(mlibdir) != lib ]] && echo 'lib/*.so usr/lib/*.so')" +fi - # then try to remove pname target - if [[ ! -z $(magequery -n ${_PNAME}-${target}) ]] - then - echo "removing deprecated mage-target '${_PNAME}-${target}'" - mage uninstall ${_PNAME}-${target} || die - fi - done - ;; - esac -} +# alx dev keeps +if [[ ! -z ${ALX_DEV_PKG_KEEP} ]] +then + ALX_DEV_ZAPMOST_OPTS+=" ${ALX_DEV_PKG_KEEP}" + ALX_RM_OPTS+=" ${ALX_DEV_PKG_KEEP}" +else + ALX_DEV_RM_OPTS+=" $(mlibdir)/*.so.* + usr/$(mlibdir)/*.so.* + $([[ $(mlibdir) != lib ]] && echo 'lib/*.so.* usr/lib/*.so.*')" +fi alx-split_generate_split_info() { @@ -79,6 +72,11 @@ { DESCRIPTION=\"${DESCRIPTION}\" DEPEND=\"${DEPEND}\" + if [[ ! -z \${ALX_DEPEND} ]] + then + DEPEND=\"\${DEPEND} + \${ALX_DEPEND}\" + fi _PNAME=\"${PNAME}\" }" } @@ -87,12 +85,33 @@ { eval "split_info_${PNAME}-dev() { - DESCRIPTION=\"Development files for ${PCATEGORIE}/${PNAME}-${PVER}-${PBUILD}.\" - DEPEND=\"== ${PCATEGORIE}/${PNAME}-${PVER}\" + DESCRIPTION=\"Development files for ${PCAT}/${PNAME}-${PVER}-${PBUILD}.\" + DEPEND=\"== ${PCAT}/${PNAME}-${PVER}\" + if [[ ! -z \${ALX_DEV_DEPEND} ]] + then + DEPEND=\"\${DEPEND} + \${ALX_DEV_DEPEND}\" + fi _PNAME=\"${PNAME}\" }" } +# honor multilib builds +if [[ ${MULTILIB_BUILD} = true ]] +then + if [[ ! -z $(typeset -f src_install) ]] + then + # rename the old one + old_alx_src_install=old$(typeset -f src_install) + eval "${old_alx_src_install}" + + alx_generic_src_install() + { + old_alx_src_install || die + } + fi +fi + alx-split_generate_src_install_dev() { eval "alx-split_src_install_${PNAME}-dev() @@ -124,12 +143,19 @@ *\**|*\\\**) if [[ -e \${BINDIR}/\$(dirname \${i}) ]] then - find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs rm + echo find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm + find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm fi ;; *) if [[ -e \${BINDIR}/\${i} ]] then + echo rm -r \${BINDIR}/\${i} + rm -r \${BINDIR}/\${i} || die + # busybox does not detect symlinks with -e if the reference does not exists + elif [[ -L \${BINDIR}/\${i} ]] + then + echo rm -r \${BINDIR}/\${i} rm -r \${BINDIR}/\${i} || die fi ;; @@ -175,12 +201,19 @@ *\**|*\\\**) if [[ -e \${BINDIR}/\$(dirname \${i}) ]] then - find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs rm + echo find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm + find \${BINDIR}/\$(dirname \${i}) -maxdepth 1 -name \"\$(basename \${i})\" | xargs --no-run-if-empty rm fi ;; *) if [[ -e \${BINDIR}/\${i} ]] then + echo rm -r \${BINDIR}/\${i} + rm -r \${BINDIR}/\${i} || die + # busybox does not detect symlinks with -e if the reference does not exists + elif [[ -L \${BINDIR}/\${i} ]] + then + echo rm -r \${BINDIR}/\${i} rm -r \${BINDIR}/\${i} || die fi ;; @@ -201,4 +234,4 @@ alx-split_generate_src_install_dev alx-split_generate_src_install -export_inherits alx-split src_install_${PNAME} src_install_${PNAME}-dev postinstall +export_inherits alx-split src_install_${PNAME} src_install_${PNAME}-dev