Index: Mk/Scripts/actual-package-depends.sh =================================================================== --- Mk/Scripts/actual-package-depends.sh +++ Mk/Scripts/actual-package-depends.sh @@ -2,7 +2,7 @@ # MAINTAINER: portmgr@FeeeBSD.org # $FreeBSD$ -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_ACTUAL_PACKAGE_DEPENDS}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_ACTUAL_PACKAGE_DEPENDS}" ] && set -x if [ -z "${PKG_BIN}" ]; then echo "PKG_BIN required in environment." >&2 @@ -60,7 +60,7 @@ searchfile=$pattern ;; *) - searchfile=$(/usr/bin/which ${pattern} 2>/dev/null) + searchfile=$(command -v ${pattern} 2>/dev/null) ;; esac if [ -n "${searchfile}" ]; then Index: Mk/Scripts/check-stagedir.sh =================================================================== --- Mk/Scripts/check-stagedir.sh +++ Mk/Scripts/check-stagedir.sh @@ -20,7 +20,7 @@ { echo '#mtree' sed 's/nochange$//;' $1 - } | tar -tf- | sed "s,^,$2/,;s,^$2/\.$,$2,;s,^$,/," + } | tar -tf- | sed "s,^,$2/,;s,^$2/\\.$,$2,;s,^$,/," } ### PRODUCE MTREE FILE @@ -33,7 +33,7 @@ # Use MTREE_FILE if specified and it doesn't already # match LOCALBASE if [ -n "${MTREE_FILE}" ]; then - if [ "${PREFIX}" != "${LOCALBASE}" -o "${MTREE_FILE}" \ + if [ "${PREFIX}" != "${LOCALBASE}" ] || [ "${MTREE_FILE}" \ != "${PORTSDIR}/Templates/BSD.local.dist" ]; then listmtree "${MTREE_FILE}" "${PREFIX}" fi @@ -90,21 +90,21 @@ sed_plist_sub=$(mktemp -t sed_plist_sub) # We only exit 0 or exit 1 - trap "rm -f ${sed_plist_sub}" EXIT 1 + trap 'rm -f ${sed_plist_sub}' EXIT 1 echo "${PLIST_SUB_SED}" | /bin/sh ${SCRIPTSDIR}/plist_sub_sed_sort.sh ${sed_plist_sub} unset PLIST_SUB_SED # Used for generate_plist - sed_files_gen="${sed_portdocsexamples} /^share\/licenses/d; \ - \#${LOCALBASE}/lib/debug#d;" + sed_files_gen="${sed_portdocsexamples} /^share\\/licenses/d; \ + \\#${LOCALBASE}/lib/debug#d;" sed_dirs_gen="s,^,@dir ,; \ ${sed_portdocsexamples} \ - /^@dir share\/licenses/d;" + /^@dir share\\/licenses/d;" # These prevent ignoring DOCS/EXAMPLES dirs with sed_portdocsexamples - sed_files="/^share\/licenses/d; \ - \#${LOCALBASE}/lib/debug#d;" + sed_files="/^share\\/licenses/d; \ + \\#${LOCALBASE}/lib/debug#d;" sed_dirs="s,^,@dir ,; \ - /^@dir share\/licenses/d;" + /^@dir share\\/licenses/d;" } @@ -124,9 +124,9 @@ | sort -u >${WRKDIR}/.traced-dirs find ${STAGEDIR} -type d | sed -e "s,^${STAGEDIR},,;/^$/d" | sort \ >${WRKDIR}/.staged-dirrms-sorted - find -s -d ${STAGEDIR}${PREFIX} -type d -empty | sed -e "s,^${STAGEDIR},,;\,^${PREFIX}$,d;/^$/d" \ + find -s -d ${STAGEDIR}${PREFIX} -type d -empty | sed -e "s,^${STAGEDIR},,;\\,^${PREFIX}$,d;/^$/d" \ >${WRKDIR}/.staged-dirs-dfs - find -s -d ${STAGEDIR} -type d ! -path "${STAGEDIR}${PREFIX}/*" | sed -e "s,^${STAGEDIR},,;\,^${PREFIX}$,d;/^$/d" \ + find -s -d ${STAGEDIR} -type d ! -path "${STAGEDIR}${PREFIX}/*" | sed -e "s,^${STAGEDIR},,;\\,^${PREFIX}$,d;/^$/d" \ >>${WRKDIR}/.staged-dirs-dfs sort ${WRKDIR}/.staged-dirs-dfs >${WRKDIR}/.staged-dirs-sorted awk '{print FNR, $0}' ${WRKDIR}/.staged-dirs-dfs \ @@ -230,7 +230,7 @@ validate_env STAGEDIR PREFIX LOCALBASE WRKDIR WRKSRC MTREE_FILE \ TMPPLIST PLIST_SUB_SED SCRIPTSDIR PORT_OPTIONS NO_PREFIX_RMDIR -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_CHECK_STAGEDIR}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_CHECK_STAGEDIR}" ] && set -x set -u Index: Mk/Scripts/check-vulnerable.sh =================================================================== --- Mk/Scripts/check-vulnerable.sh +++ Mk/Scripts/check-vulnerable.sh @@ -9,7 +9,7 @@ validate_env dp_ECHO_MSG dp_PKG_BIN dp_PORTNAME dp_PKGNAME -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_CHECK_VULNERABLE}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_CHECK_VULNERABLE}" ] && set -x set -u Index: Mk/Scripts/check_leftovers.sh =================================================================== --- Mk/Scripts/check_leftovers.sh +++ Mk/Scripts/check_leftovers.sh @@ -23,7 +23,7 @@ # The PLIST_SUB feature can be disabled by setting PLIST_SUB_SED= # in environment. -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_CHECK_LEFTOVERS}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_CHECK_LEFTOVERS}" ] && set -x origin="$1" [ $# -eq 1 ] || { echo "Must supply ORIGIN as parameter" >&2; exit 1; } @@ -45,9 +45,9 @@ if [ -z "${CCACHE_DIR}" ]; then CCACHE_DIR=$(make -C ${portdir} -VCCACHE_DIR) fi -homedirs=$(awk -F: -v users="$(make -C ${portdir} -V USERS|sed -e 's, ,|,g;/^$/d;s,^,^(,;s,$,)$,')" 'users && $1 ~ users {print $9}' ${PORTSDIR}/UIDs|sort -u|sed -e "s|/usr/local|${PREFIX}|"|tr "\n" " ") +homedirs=$(awk -F: -v users="$(make -C ${portdir} -V USERS|sed -e 's, ,|,g;/^$/d;s,^,^(,;s,$,)$,')" 'users && $1 ~ users {print $9}' ${PORTSDIR}/UIDs|sort -u|sed -e "s|/usr/local|${PREFIX}|"|tr "\\n" " ") plistsub_sed=$(mktemp -t plistsub_sed) -trap "rm -f ${plistsub_sed}" EXIT 1 +trap 'rm -f ${plistsub_sed}' EXIT 1 make -C ${portdir} -VPLIST_SUB_SED | /bin/sh ${PORTSDIR}/Mk/Scripts/plist_sub_sed_sort.sh ${plistsub_sed} tmpplist=$(make -C ${portdir} -VTMPPLIST) @@ -119,16 +119,16 @@ # bsd.port.mk for now. # Skip if it is PREFIX and non-LOCALBASE. See misc/kdehier4 # or mail/qmail for examples - [ "${path}" = "${PREFIX}" -a "${LOCALBASE}" != "${PREFIX}" ] && + [ "${path}" = "${PREFIX}" ] && [ "${LOCALBASE}" != "${PREFIX}" ] && ignore_path=1 # The removal of info may be a bug; it's part of BSD.local.dist. # See ports/74691 - [ "${sub_path}" = "info" -a "${LOCALBASE}" != "${PREFIX}" ] && + [ "${sub_path}" = "info" ] && [ "${LOCALBASE}" != "${PREFIX}" ] && ignore_path=1 - [ $ignore_path -eq 0 ] && echo "- ${sub_path}" + [ $ignore_path -eq 0 ] && printf -- "- %s\\n" "${sub_path}" ;; M) # Check relative/plist paths Index: Mk/Scripts/checksum.sh =================================================================== --- Mk/Scripts/checksum.sh +++ Mk/Scripts/checksum.sh @@ -11,7 +11,7 @@ dp_DIST_SUBDIR dp_ECHO_MSG dp_FETCH_REGET dp_MAKE dp_MAKEFLAGS \ dp_DISABLE_SIZE dp_NO_CHECKSUM -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_CHECKSUM}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_CHECKSUM}" ] && set -x set -u @@ -34,7 +34,7 @@ ignore="true" fi - if [ $ignore = "false" -a -z "$CKSUM" ]; then + if [ $ignore = "false" ] && [ -z "$CKSUM" ]; then ${dp_ECHO_MSG} "=> No $alg checksum recorded for $file." ignore="true" fi @@ -57,7 +57,9 @@ ${dp_ECHO_MSG} "=> $alg Checksum mismatch for $file." refetchlist="$refetchlist $file " OK="${OK:-retry}" - [ "${OK}" = "retry" -a "${dp_FETCH_REGET}" -gt 0 ] && rm -f "${file}" + if [ "${OK}" = "retry" ] && [ "${dp_FETCH_REGET}" -gt 0 ]; then + rm -f "${file}" + fi ignored="false" fi done @@ -77,7 +79,7 @@ fi fi - if [ "$OK" != "true" -a "${dp_FETCH_REGET}" -eq 0 ]; then + if [ "$OK" != "true" ] && [ "${dp_FETCH_REGET}" -eq 0 ]; then ${dp_ECHO_MSG} "===> Giving up on fetching files: $refetchlist" ${dp_ECHO_MSG} "Make sure the Makefile and distinfo file (${dp_DISTINFO_FILE})" ${dp_ECHO_MSG} "are up to date. If you are absolutely sure you want to override this" Index: Mk/Scripts/create-manifest.sh =================================================================== --- Mk/Scripts/create-manifest.sh +++ Mk/Scripts/create-manifest.sh @@ -16,7 +16,7 @@ dp_PKGVERSION dp_PKG_BIN dp_PKG_IGNORE_DEPENDS dp_PKG_NOTES \ dp_PORT_OPTIONS dp_PREFIX dp_USERS dp_WWW -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_CREATE_MANIFEST}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_CREATE_MANIFEST}" ] && set -x set -u Index: Mk/Scripts/depends-list.sh =================================================================== --- Mk/Scripts/depends-list.sh +++ Mk/Scripts/depends-list.sh @@ -38,14 +38,14 @@ shift $((OPTIND-1)) validate_env PORTSDIR dp_PKGNAME -if [ ${recursive} -eq 1 -o ${requires_wrkdir} -eq 1 ]; then +if [ ${recursive} -eq 1 ] || [ ${requires_wrkdir} -eq 1 ]; then validate_env dp_MAKE # Cache command executions to avoid looking them up again in every # sub-make. MAKE="${dp_MAKE}" export_ports_env >/dev/null fi -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_DEPENDS_LIST}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_DEPENDS_LIST}" ] && set -x set -u @@ -75,7 +75,7 @@ d=${d%@*} ;; esac - if [ ${flavors} -eq 1 -a -n "${FLAVOR:-}" ]; then + if [ ${flavors} -eq 1 ] && [ -n "${FLAVOR:-}" ]; then port_display="${d}@${FLAVOR}" else port_display="${d}" @@ -118,7 +118,7 @@ show_dep=0 fi [ ${show_dep} -eq 1 ] && echo "${port_display}" - if [ ${recursive} -eq 1 -o ${requires_wrkdir} -eq 1 -a ${show_dep} -eq 1 ]; then + if [ ${recursive} -eq 1 ] || ( [ ${requires_wrkdir} -eq 1 ] && [ ${show_dep} -eq 1 ] ); then # shellcheck disable=SC2068 # Do not add quotes, we want to split the string here. check_dep $@ Index: Mk/Scripts/dialog4ports.sh =================================================================== --- Mk/Scripts/dialog4ports.sh +++ Mk/Scripts/dialog4ports.sh @@ -3,15 +3,15 @@ # Maintainer: portmgr@FreeBSD.org set -e -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_DIALOG4PORTS}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_DIALOG4PORTS}" ] && set -x -if [ -z "${DIALOG4PORTS}" -o -z "${PORTSDIR}" -o -z "${MAKE}" ]; then +if [ -z "${DIALOG4PORTS}" ] || [ -z "${PORTSDIR}" ] || [ -z "${MAKE}" ]; then echo "DIALOG4PORTS, MAKE and PORTSDIR required in environment." >&2 exit 1 fi -: ${DIALOGPORT:=ports-mgmt/dialog4ports} -: ${DIALOGNAME:=dialog4ports} +: "${DIALOGPORT:=ports-mgmt/dialog4ports}" +: "${DIALOGNAME:=dialog4ports}" OPTIONSFILE="$1" @@ -19,7 +19,7 @@ # If INSTALL_AS_USER is set then just build and use the WRKDIR version # Also do this if PREFIX!=LOCALBASE to avoid missing file or double # installs - if [ -n "${INSTALL_AS_USER}" -o "${PREFIX}" != "${LOCALBASE}" ]; then + if [ -n "${INSTALL_AS_USER}" ] || [ "${PREFIX}" != "${LOCALBASE}" ]; then if ! [ -d "${PORTSDIR}/${DIALOGPORT}" ]; then echo "===> Skipping 'config' as ${DIALOGPORT} is not checked out" >&2 exit 1 Index: Mk/Scripts/do-depends.sh =================================================================== --- Mk/Scripts/do-depends.sh +++ Mk/Scripts/do-depends.sh @@ -13,7 +13,7 @@ dp_PKGNAME dp_STRICT_DEPENDS dp_LOCALBASE dp_LIB_DIRS dp_SH \ dp_SCRIPTSDIR PORTSDIR dp_MAKE dp_MAKEFLAGS -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_DO_DEPENDS}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_DO_DEPENDS}" ] && set -x set -u @@ -22,7 +22,7 @@ origin=$1 target=$2 depends_args=$3 - if [ -z "${dp_USE_PACKAGE_DEPENDS}" -a -z "${dp_USE_PACKAGE_DEPENDS_ONLY}" ]; then + if [ -z "${dp_USE_PACKAGE_DEPENDS}" ] && [ -z "${dp_USE_PACKAGE_DEPENDS_ONLY}" ]; then MAKEFLAGS="${dp_MAKEFLAGS}" ${dp_MAKE} -C ${origin} -DINSTALLS_DEPENDS ${target} ${depends_args} return 0 fi @@ -31,7 +31,7 @@ PKGFILE pkgfile \ PKGBASE pkgbase - if [ -r "${pkgfile}" -a "${target}" = "${dp_DEPENDS_TARGET}" ]; then + if [ -r "${pkgfile}" ] && [ "${target}" = "${dp_DEPENDS_TARGET}" ]; then echo "===> Installing existing package ${pkgfile}" if [ "${pkgbase}" = "pkg" ]; then [ -d ${dp_WRKDIR} ] || mkdir -p ${dp_WRKDIR} @@ -41,7 +41,7 @@ else ${dp_PKG_ADD} -A ${pkgfile} fi - elif [ -n "${dp_USE_PACKAGE_DEPENDS_ONLY}" -a "${target}" = "${dp_DEPENDS_TARGET}" ]; then + elif [ -n "${dp_USE_PACKAGE_DEPENDS_ONLY}" ] && [ "${target}" = "${dp_DEPENDS_TARGET}" ]; then echo "===> ${dp_PKGNAME} depends on package: ${pkgfile} - not found" >&2 echo "===> USE_PACKAGE_DEPENDS_ONLY set - not building missing dependency from source" >&2 exit 1 @@ -72,7 +72,7 @@ find_file_path() { - if which -s $1 ; then + if command -v $1 >/dev/null ; then echo "===> ${dp_PKGNAME} depends on executable: $1 - found" return 0 fi @@ -82,7 +82,7 @@ find_lib() { - echo -n "===> ${dp_PKGNAME} depends on shared library: $1" + printf "===> %s depends on shared library: %s" "${dp_PKGNAME}" "$1" libfile=$(env -i PATH="${PATH}" LIB_DIRS="${dp_LIB_DIRS}" LOCALBASE="${dp_LOCALBASE}" ${dp_SH} ${dp_SCRIPTSDIR}/find-lib.sh $1) if [ -z "${libfile}" ]; then echo " - not found" @@ -100,7 +100,7 @@ IFS=: set -- ${_line} IFS=${myifs} - if [ $# -lt 2 -o $# -gt 3 ]; then + if [ $# -lt 2 ] || [ $# -gt 3 ]; then echo "Error: bad dependency syntax in ${dp_DEPTYPE}" >&2 echo "expecting: pattern:origin[@flavour][:target]" >&2 echo "got: ${_line}" >&2 @@ -190,7 +190,7 @@ exit 1 fi -if [ -n "${dp_STRICT_DEPENDS}" -a ${anynotfound} -eq 1 ]; then \ +if [ -n "${dp_STRICT_DEPENDS}" ] && [ ${anynotfound} -eq 1 ]; then \ echo "===> dp_STRICT_DEPENDS set - Not installing missing dependencies." echo " This means a dependency is wrong since it was not satisfied in the ${dp_DEPTYPE} phase." exit 1 Index: Mk/Scripts/do-fetch.sh =================================================================== --- Mk/Scripts/do-fetch.sh +++ Mk/Scripts/do-fetch.sh @@ -13,7 +13,7 @@ dp_MASTER_SITE_BACKUP dp_MASTER_SITE_OVERRIDE dp_MASTER_SORT_AWK \ dp_NO_CHECKSUM dp_RANDOMIZE_SITES dp_SITE_FLAVOR dp_TARGET -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_DO_FETCH}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_DO_FETCH}" ] && set -x set -u @@ -48,7 +48,7 @@ fi done fi - if [ -f "${file}" -a "$force_fetch" != "true" ]; then + if [ -f "${file}" ] && [ "$force_fetch" != "true" ]; then continue fi full_file="${dp_DIST_SUBDIR:+${dp_DIST_SUBDIR}/}${file}" @@ -58,7 +58,7 @@ ${dp_ECHO_MSG} "=> Please correct this problem and try again." exit 1 fi - if [ -f "${dp_DISTINFO_FILE}" -a -z "${dp_NO_CHECKSUM}" ]; then + if [ -f "${dp_DISTINFO_FILE}" ] && [ -z "${dp_NO_CHECKSUM}" ]; then _sha256sum=$(distinfo_data SHA256 "${full_file}") if [ -z "$_sha256sum" ]; then ${dp_ECHO_MSG} "=> ${dp_DIST_SUBDIR:+$dp_DIST_SUBDIR/}$file is not in ${dp_DISTINFO_FILE}." @@ -104,11 +104,10 @@ fi done ___MASTER_SITES_TMP= - SORTED_MASTER_SITES_CMD_TMP="echo ${dp_MASTER_SITE_OVERRIDE} $(echo -n "${__MASTER_SITES_TMP}" | awk "${dp_MASTER_SORT_AWK}") ${dp_MASTER_SITE_BACKUP}" + SORTED_MASTER_SITES_CMD_TMP="echo ${dp_MASTER_SITE_OVERRIDE} $(printf "%s" "${__MASTER_SITES_TMP}" | awk "${dp_MASTER_SORT_AWK}") ${dp_MASTER_SITE_BACKUP}" case ${dp_TARGET} in fetch-list) - echo -n "mkdir -p ${dp_DISTDIR} && " - echo -n "cd ${dp_DISTDIR} && { " + printf "mkdir -p %s && cd %s && { " "${dp_DISTDIR}" "${dp_DISTDIR}" ;; esac sites_remaining=0 @@ -134,7 +133,7 @@ ;; esac _fetch_cmd="${dp_FETCH_CMD} ${dp_FETCH_BEFORE_ARGS}" - if [ -z "${dp_DISABLE_SIZE}" -a -n "${CKSIZE}" ]; then + if [ -z "${dp_DISABLE_SIZE}" ] && [ -n "${CKSIZE}" ]; then _fetch_cmd="${_fetch_cmd} -S ${CKSIZE}" fi _fetch_cmd="${_fetch_cmd} ${args} ${dp_FETCH_AFTER_ARGS}" @@ -155,7 +154,7 @@ fi ;; fetch-list) - echo -n "env $(escape "${_fetch_cmd}") || " + printf "env %s || " "$(escape "${_fetch_cmd}")" ;; fetch-url-list-int) echo ${args} Index: Mk/Scripts/do-patch.sh =================================================================== --- Mk/Scripts/do-patch.sh +++ Mk/Scripts/do-patch.sh @@ -13,7 +13,7 @@ dp_PATCH_SILENT dp_PATCH_WRKSRC dp_PKGNAME dp_PKGORIGIN \ dp_UNZIP_NATIVE_CMD dp_XZCAT -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_DO_PATCH}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_DO_PATCH}" ] && set -x set -u @@ -83,7 +83,7 @@ PATCHES_APPLIED="${PATCHES_APPLIED} ${i}" else ${dp_ECHO_MSG} "=> ${msg} patch ${i} failed to apply cleanly." - if [ -n "${PATCHES_APPLIED}" -a "${dp_PATCH_SILENT}" != "yes" ]; then + if [ -n "${PATCHES_APPLIED}" ] && [ "${dp_PATCH_SILENT}" != "yes" ]; then ${dp_ECHO_MSG} "=> Patch(es) ${PATCHES_APPLIED} applied cleanly." fi false Index: Mk/Scripts/do-users-groups.sh =================================================================== --- Mk/Scripts/do-users-groups.sh +++ Mk/Scripts/do-users-groups.sh @@ -12,12 +12,12 @@ dp_UG_DEINSTALL dp_UG_INSTALL dp_UID_FILES dp_UID_OFFSET \ dp_USERS_BLACKLIST -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_DO_USERS_GROUPS}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_DO_USERS_GROUPS}" ] && set -x set -u -USERS=$1 -GROUPS=$2 +ALL_USERS=$1 +ALL_GROUPS=$2 error() { ${dp_ECHO_MSG} "${1}" @@ -46,7 +46,7 @@ # Both scripts need to start the same, so cp -f "${dp_UG_INSTALL}" "${dp_UG_DEINSTALL}" -if [ -n "${GROUPS}" ]; then +if [ -n "${ALL_GROUPS}" ]; then for file in ${dp_GID_FILES}; do if [ ! -f "${file}" ]; then error "** ${file} doesn't exist. Exiting." @@ -54,7 +54,7 @@ done ${dp_ECHO_MSG} "===> Creating groups." echo "echo \"===> Creating groups.\"" >> "${dp_UG_INSTALL}" - for group in ${GROUPS}; do + for group in ${ALL_GROUPS}; do # _bgpd:*:130: if ! grep -q "^${group}:" ${dp_GID_FILES}; then \ error "** Cannot find any information about group \`${group}' in ${dp_GID_FILES}." @@ -87,7 +87,7 @@ done fi -if [ -n "${USERS}" ]; then +if [ -n "${ALL_USERS}" ]; then for file in ${dp_UID_FILES}; do if [ ! -f "${file}" ]; then error "** ${file} doesn't exist. Exiting." @@ -97,7 +97,7 @@ ${dp_ECHO_MSG} "===> Creating users" echo "echo \"===> Creating users\"" >> "${dp_UG_INSTALL}" - for user in ${USERS}; do + for user in ${ALL_USERS}; do # _bgpd:*:130:130:BGP Daemon:/var/empty:/sbin/nologin if ! grep -q "^${user}:" ${dp_UID_FILES} ; then error "** Cannot find any information about user \`${user}' in ${dp_UID_FILES}." @@ -148,8 +148,8 @@ done fi -if [ -n "${GROUPS}" ]; then - for group in ${GROUPS}; do +if [ -n "${ALL_GROUPS}" ]; then + for group in ${ALL_GROUPS}; do # mail:*:6:postfix,clamav while read -r line; do # Do not change IFS for more than one command, if we @@ -170,7 +170,7 @@ set -- ${members} IFS=${o_IFS} for login in "$@"; do - for user in ${USERS}; do + for user in ${ALL_USERS}; do if [ -n "${user}" ] && [ "${user}" = "${login}" ]; then cat >> "${dp_UG_INSTALL}" <<-eot2 if ! \${PW} groupshow ${group} | grep -qw ${login}; then @@ -187,8 +187,8 @@ done fi -if [ -n "${USERS}" ]; then - for user in ${USERS}; do +if [ -n "${ALL_USERS}" ]; then + for user in ${ALL_USERS}; do if ! echo "${dp_USERS_BLACKLIST}" | grep -qw "${user}"; then cat >> "${dp_UG_DEINSTALL}" <<-eot if \${PW} usershow ${user} >/dev/null 2>&1; then @@ -199,8 +199,8 @@ done fi -if [ -n "${GROUPS}" ]; then - for group in ${GROUPS}; do +if [ -n "${ALL_GROUPS}" ]; then + for group in ${ALL_GROUPS}; do if ! echo "${dp_GROUPS_BLACKLIST}" | grep -qw "${group}"; then cat >> "${dp_UG_DEINSTALL}" <<-eot if \${PW} groupshow ${group} >/dev/null 2>&1; then Index: Mk/Scripts/find-lib.sh =================================================================== --- Mk/Scripts/find-lib.sh +++ Mk/Scripts/find-lib.sh @@ -2,14 +2,14 @@ # MAINTAINER: portmgr@FreeBSD.org # $FreeBSD$ -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_FIND_LIB}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_FIND_LIB}" ] && set -x -if [ -z "${LIB_DIRS}" -o -z "${LOCALBASE}" ]; then +if [ -z "${LIB_DIRS}" ] || [ -z "${LOCALBASE}" ]; then echo "LIB_DIRS, LOCALBASE required in environment." >&2 exit 1 fi -if [ -f /usr/share/misc/magic.mime -o -f /usr/share/misc/magic.mime.mgc ]; then +if [ -f /usr/share/misc/magic.mime ] || [ -f /usr/share/misc/magic.mime.mgc ]; then echo >&2 echo "Either /usr/share/misc/magic.mime or /usr/share/misc/magic.mime.mgc exist and must be removed." >&2 echo "These are legacy files from an older release and may safely be deleted." >&2 Index: Mk/Scripts/functions.sh =================================================================== --- Mk/Scripts/functions.sh +++ Mk/Scripts/functions.sh @@ -30,7 +30,7 @@ # the plist so it does not show up as an orphan. PLIST_SUB uses # a @comment to deactive files. XXX: It would be better to # make all ports use @ignore instead of @comment. - if [ ${parse_comments} -eq 1 -a -z "${line%%@comment *}" ]; then + if [ ${parse_comments} -eq 1 ] && [ -z "${line%%@comment *}" ]; then line="${line##*@comment }" # Remove @comment so it can be parsed as a file, # but later prepend it again to create a list of @@ -60,7 +60,7 @@ @dir*|'@unexec rmdir'*|'@unexec /bin/rmdir'*) line="$(printf %s "$line" \ | sed -Ee 's/\|\|.*//;s|[[:space:]]+[0-9]*[[:space:]]*>[&]?[[:space:]]*[^[:space:]]+||g' \ - -e "/^@unexec[[:space:]]+(\/bin\/)?rmdir( -p)?/s|([^%])%D([^%])|\1${cwd}\2|g" \ + -e "/^@unexec[[:space:]]+(\\/bin\\/)?rmdir( -p)?/s|([^%])%D([^%])|\\1${cwd}\\2|g" \ -e '/^@unexec[[:space:]]+(\/bin\/)?rmdir( -p)?/s|"(.*)"[[:space:]]*|\1|g' \ -e 's/@unexec[[:space:]]+(\/bin\/)?rmdir( -p)?[[:space:]]+//' \ -e 's/@dir(rm|rmtry)?[[:space:]]+//' \ @@ -213,7 +213,7 @@ alg=$1 file=$2 - if [ \( -n "${dp_DISABLE_SIZE}" -a -n "${dp_NO_CHECKSUM}" \) -o ! -f "${dp_DISTINFO_FILE}" ]; then + if ( [ -n "${dp_DISABLE_SIZE}" ] && [ -n "${dp_NO_CHECKSUM}" ] ) || [ ! -f "${dp_DISTINFO_FILE}" ]; then exit fi awk -v alg="$alg" -v file="${file}" \ Index: Mk/Scripts/makesum.sh =================================================================== --- Mk/Scripts/makesum.sh +++ Mk/Scripts/makesum.sh @@ -10,7 +10,7 @@ validate_env dp_CHECKSUM_ALGORITHMS dp_CKSUMFILES dp_DISTDIR dp_DISTINFO_FILE \ dp_ECHO_MSG -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_MAKESUM}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_MAKESUM}" ] && set -x set -u Index: Mk/Scripts/qa.sh =================================================================== --- Mk/Scripts/qa.sh +++ Mk/Scripts/qa.sh @@ -2,15 +2,16 @@ # MAINTAINER: portmgr@FreeBSD.org # $FreeBSD$ -if [ -z "${STAGEDIR}" -o -z "${PREFIX}" -o -z "${LOCALBASE}" ]; then +if [ -z "${STAGEDIR}" ] || [ -z "${PREFIX}" ] || [ -z "${LOCALBASE}" ]; then echo "STAGEDIR, PREFIX, LOCALBASE required in environment." >&2 exit 1 fi -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_QA}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_QA}" ] && set -x LF=$(printf '\nX') LF=${LF%X} +SOH=$(printf '\1') notice() { echo "Notice: $*" >&2 @@ -112,7 +113,7 @@ local rc local found_openssl local file - [ "${PKGBASE}" = "pkg" -o "${PKGBASE}" = "pkg-devel" ] && return + [ "${PKGBASE}" = "pkg" ] || [ "${PKGBASE}" = "pkg-devel" ] && return while read -r f; do case ${f} in File:\ .*) @@ -133,9 +134,9 @@ done <<-EOF $(list_stagedir_elfs -exec readelf -d {} + 2>/dev/null) EOF - if [ -z "${USESSSL}" -a -n "${found_openssl}" ]; then + if [ -z "${USESSSL}" ] && [ -n "${found_openssl}" ]; then warn "you need USES=ssl" - elif [ -n "${USESSSL}" -a -z "${found_openssl}" ]; then + elif [ -n "${USESSSL}" ] && [ -z "${found_openssl}" ]; then warn "you may not need USES=ssl" fi return ${rc} @@ -163,7 +164,7 @@ warn "Bad symlink '${l#${STAGEDIR}}' pointing to an absolute pathname '${link}'" fi # Also warn if the symlink exists nowhere. - if [ ! -e "${STAGEDIR}${link}" -a ! -e "${link}" ]; then + if [ ! -e "${STAGEDIR}${link}" ] && [ ! -e "${link}" ]; then warn "Symlink '${l#${STAGEDIR}}' pointing to '${link}' which does not exist in the stage directory or in localbase" fi ;; @@ -231,15 +232,15 @@ local f found found=0 - for f in ${STAGEDIR}${PREFIX}/share/mime/packages/*.xml; do + for f in "${STAGEDIR}${PREFIX}"/share/mime/packages/*.xml; do [ "${f}" = "${STAGEDIR}${PREFIX}/share/mime/packages/*.xml" ] && break #no matches [ "${f}" = "${STAGEDIR}${PREFIX}/share/mime/packages/freedesktop.org.xml" ] && continue found=1 break done - if [ -z "${USESSHAREDMIMEINFO}" -a ${found} -eq 1 ]; then + if [ -z "${USESSHAREDMIMEINFO}" ] && [ ${found} -eq 1 ]; then warn "you need USES=shared-mime-info" - elif [ -n "${USESSHAREDMIMEINFO}" -a ${found} -eq 0 ]; then + elif [ -n "${USESSHAREDMIMEINFO}" ] && [ ${found} -eq 0 ]; then warn "you may not need USES=shared-mime-info" fi return 0 @@ -272,7 +273,7 @@ libperl() { local has_some_libperl_so files found - if [ -n "${SITE_ARCH_REL}" -a -d "${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}" ]; then + if [ -n "${SITE_ARCH_REL}" ] && [ -d "${STAGEDIR}${PREFIX}/${SITE_ARCH_REL}" ]; then has_some_libperl_so=0 files=0 while read -r f; do @@ -296,7 +297,7 @@ $(find ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL} -name '*.so') EOT - if [ ${files} -gt 0 -a ${has_some_libperl_so} -eq 0 ]; then + if [ ${files} -gt 0 ] && [ ${has_some_libperl_so} -eq 0 ]; then err "None of the ${files} .so in ${STAGEDIR}${PREFIX}/${SITE_ARCH_REL} are linked with ${LIBPERL}, see above for the full list." return 1 else @@ -306,7 +307,7 @@ } prefixvar() { - if [ ${PREFIX} != ${LINUXBASE} -a -d ${STAGEDIR}${PREFIX}/var ]; then + if [ ${PREFIX} != ${LINUXBASE} ] && [ -d ${STAGEDIR}${PREFIX}/var ]; then warn "port uses ${PREFIX}/var instead of /var" fi } @@ -314,19 +315,19 @@ terminfo() { local f found - for f in ${STAGEDIR}${PREFIX}/share/misc/*.terminfo; do + for f in "${STAGEDIR}${PREFIX}"/share/misc/*.terminfo; do [ "${f}" = "${STAGEDIR}${PREFIX}/share/misc/*.terminfo" ] && break #no matches found=1 break done - for f in ${STAGEDIR}${PREFIX}/share/misc/terminfo.db*; do + for f in "${STAGEDIR}${PREFIX}"/share/misc/terminfo.db*; do [ "${f}" = "${STAGEDIR}${PREFIX}/share/misc/terminfo.db*" ] && break #no matches found=1 break done - if [ -z "${USESTERMINFO}" -a -n "${found}" ]; then + if [ -z "${USESTERMINFO}" ] && [ -n "${found}" ]; then warn "you need USES=terminfo" - elif [ -n "${USESTERMINFO}" -a -z "${found}" ]; then + elif [ -n "${USESTERMINFO}" ] && [ -z "${found}" ]; then warn "you may not need USES=terminfo" fi return 0 @@ -357,60 +358,60 @@ elif [ ${pkg} = 'databases/sqlite2' ]; then warn "you need USES+=sqlite:2" # Gnome -> same as port - # grep LIB_DEPENDS= Mk/Uses/gnome.mk |sed -e 's|\(.*\)_LIB_DEPENDS.*:\(.*\)\/\(.*\)|[ "\1" = "\3" ] \&\& echo "\\${pkg} = \\\"\2/\3\\\" -o \\\\"|'|sort|sh - elif [ ${pkg} = "accessibility/atk" -o \ - ${pkg} = "accessibility/atkmm" -o \ - ${pkg} = "graphics/cairo" -o \ - ${pkg} = "graphics/cairomm" -o \ - ${pkg} = "devel/dconf" -o \ - ${pkg} = "audio/esound" -o \ - ${pkg} = "devel/gconf2" -o \ - ${pkg} = "devel/gconfmm26" -o \ - ${pkg} = "devel/glib12" -o \ - ${pkg} = "devel/glib20" -o \ - ${pkg} = "devel/glibmm" -o \ - ${pkg} = "audio/gsound" -o \ - ${pkg} = "x11-toolkits/gtk12" -o \ - ${pkg} = "x11-toolkits/gtk20" -o \ - ${pkg} = "x11-toolkits/gtk30" -o \ - ${pkg} = "www/gtkhtml3" -o \ - ${pkg} = "www/gtkhtml4" -o \ - ${pkg} = "x11-toolkits/gtkmm20" -o \ - ${pkg} = "x11-toolkits/gtkmm24" -o \ - ${pkg} = "x11-toolkits/gtkmm30" -o \ - ${pkg} = "x11-toolkits/gtksourceview" -o \ - ${pkg} = "x11-toolkits/gtksourceview2" -o \ - ${pkg} = "x11-toolkits/gtksourceview3" -o \ - ${pkg} = "x11-toolkits/gtksourceviewmm3" -o \ - ${pkg} = "devel/libbonobo" -o \ - ${pkg} = "x11-toolkits/libbonoboui" -o \ - ${pkg} = "databases/libgda5" -o \ - ${pkg} = "databases/libgda5-ui" -o \ - ${pkg} = "databases/libgdamm5" -o \ - ${pkg} = "devel/libglade2" -o \ - ${pkg} = "x11/libgnome" -o \ - ${pkg} = "graphics/libgnomecanvas" -o \ - ${pkg} = "x11/libgnomekbd" -o \ - ${pkg} = "print/libgnomeprint" -o \ - ${pkg} = "x11-toolkits/libgnomeprintui" -o \ - ${pkg} = "x11-toolkits/libgnomeui" -o \ - ${pkg} = "devel/libgsf" -o \ - ${pkg} = "www/libgtkhtml" -o \ - ${pkg} = "x11-toolkits/libgtksourceviewmm" -o \ - ${pkg} = "graphics/librsvg2" -o \ - ${pkg} = "devel/libsigc++12" -o \ - ${pkg} = "devel/libsigc++20" -o \ - ${pkg} = "x11-toolkits/libwnck" -o \ - ${pkg} = "x11-toolkits/libwnck3" -o \ - ${pkg} = "textproc/libxml++26" -o \ - ${pkg} = "textproc/libxml2" -o \ - ${pkg} = "textproc/libxslt" -o \ - ${pkg} = "x11-wm/metacity" -o \ - ${pkg} = "x11-toolkits/pango" -o \ - ${pkg} = "x11-toolkits/pangomm" -o \ - ${pkg} = "x11-toolkits/pangox-compat" -o \ - ${pkg} = "x11-toolkits/vte" -o \ - ${pkg} = "x11-toolkits/vte3" ]; then + # grep LIB_DEPENDS= Mk/Uses/gnome.mk |sed -e 's|\(.*\)_LIB_DEPENDS.*:\(.*\)\/\([^[:space:]]*\).*|[ "\1" = "\3" ] \&\& echo "[ \\${pkg} = \\\"\2/\3\\\" ] \|\| \\\\"|'|env LANG=C sort|sh + elif [ ${pkg} = "accessibility/atk" ] || \ + [ ${pkg} = "accessibility/atkmm" ] || \ + [ ${pkg} = "graphics/cairo" ] || \ + [ ${pkg} = "graphics/cairomm" ] || \ + [ ${pkg} = "devel/dconf" ] || \ + [ ${pkg} = "audio/esound" ] || \ + [ ${pkg} = "devel/gconf2" ] || \ + [ ${pkg} = "devel/gconfmm26" ] || \ + [ ${pkg} = "devel/glib12" ] || \ + [ ${pkg} = "devel/glib20" ] || \ + [ ${pkg} = "devel/glibmm" ] || \ + [ ${pkg} = "audio/gsound" ] || \ + [ ${pkg} = "x11-toolkits/gtk12" ] || \ + [ ${pkg} = "x11-toolkits/gtk20" ] || \ + [ ${pkg} = "x11-toolkits/gtk30" ] || \ + [ ${pkg} = "www/gtkhtml3" ] || \ + [ ${pkg} = "www/gtkhtml4" ] || \ + [ ${pkg} = "x11-toolkits/gtkmm20" ] || \ + [ ${pkg} = "x11-toolkits/gtkmm24" ] || \ + [ ${pkg} = "x11-toolkits/gtkmm30" ] || \ + [ ${pkg} = "x11-toolkits/gtksourceview" ] || \ + [ ${pkg} = "x11-toolkits/gtksourceview2" ] || \ + [ ${pkg} = "x11-toolkits/gtksourceview3" ] || \ + [ ${pkg} = "x11-toolkits/gtksourceviewmm3" ] || \ + [ ${pkg} = "devel/libbonobo" ] || \ + [ ${pkg} = "x11-toolkits/libbonoboui" ] || \ + [ ${pkg} = "databases/libgda5" ] || \ + [ ${pkg} = "databases/libgda5-ui" ] || \ + [ ${pkg} = "databases/libgdamm5" ] || \ + [ ${pkg} = "devel/libglade2" ] || \ + [ ${pkg} = "x11/libgnome" ] || \ + [ ${pkg} = "graphics/libgnomecanvas" ] || \ + [ ${pkg} = "x11/libgnomekbd" ] || \ + [ ${pkg} = "print/libgnomeprint" ] || \ + [ ${pkg} = "x11-toolkits/libgnomeprintui" ] || \ + [ ${pkg} = "x11-toolkits/libgnomeui" ] || \ + [ ${pkg} = "devel/libgsf" ] || \ + [ ${pkg} = "www/libgtkhtml" ] || \ + [ ${pkg} = "x11-toolkits/libgtksourceviewmm" ] || \ + [ ${pkg} = "graphics/librsvg2" ] || \ + [ ${pkg} = "devel/libsigc++12" ] || \ + [ ${pkg} = "devel/libsigc++20" ] || \ + [ ${pkg} = "x11-toolkits/libwnck" ] || \ + [ ${pkg} = "x11-toolkits/libwnck3" ] || \ + [ ${pkg} = "textproc/libxml++26" ] || \ + [ ${pkg} = "textproc/libxml2" ] || \ + [ ${pkg} = "textproc/libxslt" ] || \ + [ ${pkg} = "x11-wm/metacity" ] || \ + [ ${pkg} = "x11-toolkits/pango" ] || \ + [ ${pkg} = "x11-toolkits/pangomm" ] || \ + [ ${pkg} = "x11-toolkits/pangox-compat" ] || \ + [ ${pkg} = "x11-toolkits/vte" ] || \ + [ ${pkg} = "x11-toolkits/vte3" ]; then warn "you need USE_GNOME+=${pkg#*/}" # Gnome different as port # grep LIB_DEPENDS= Mk/Uses/gnome.mk |sed -e 's|\(.*\)_LIB_DEPENDS.*:\(.*\)\/\(.*\)|[ "\1" = "\3" ] \|\| echo "elif [ \\${pkg} = \\\"\2/\3\\\" ]; then; warn \\\"you need USE_GNOME+=\1\\\""|'|sort|sh @@ -550,7 +551,7 @@ elif expr ${pkg} : "^databases/db[456]" > /dev/null; then warn "you need USES+=bdb" # fam/gamin - elif [ ${pkg} = "devel/fam" -o ${pkg} = "devel/gamin" ]; then + elif [ ${pkg} = "devel/fam" ] || [ ${pkg} = "devel/gamin" ]; then warn "you need USES+=fam" # firebird elif [ ${pkg} = "databases/firebird25-client" ]; then @@ -567,7 +568,7 @@ elif [ ${pkg} = "converters/libiconv" ]; then warn "you need USES+=iconv, USES+=iconv:wchar_t, or USES+=iconv:translit depending on needs" # jpeg - elif [ ${pkg} = "graphics/jpeg" -o ${pkg} = "graphics/jpeg-turbo" ]; then + elif [ ${pkg} = "graphics/jpeg" ] || [ ${pkg} = "graphics/jpeg-turbo" ]; then warn "you need USES+=jpeg" # libarchive elif [ ${pkg} = "archivers/libarchive" ]; then @@ -578,7 +579,7 @@ elif expr ${pkg} : "^lang/lua" > /dev/null; then warn "you need USES+=lua" # motif - elif [ ${pkg} = "x11-toolkits/lesstif" -o ${pkg} = "x11-toolkits/open-motif" ]; then + elif [ ${pkg} = "x11-toolkits/lesstif" ] || [ ${pkg} = "x11-toolkits/open-motif" ]; then warn "you need USES+=motif" # ncurses elif [ ${pkg} = "devel/ncurses" ]; then @@ -587,7 +588,7 @@ elif [ ${pkg} = "lang/libobjc2" ]; then warn "you need USES+=objc" # openal - elif [ ${pkg} = "audio/openal" -o ${pkg} = "audio/openal-soft" -o ${pkg} = "audio/freealut" ]; then + elif [ ${pkg} = "audio/openal" ] || [ ${pkg} = "audio/openal-soft" ] || [ ${pkg} = "audio/freealut" ]; then warn "you need USES+=openal" # pure elif [ ${pkg} = "lang/pure" ]; then @@ -596,9 +597,8 @@ elif [ ${pkg} = "devel/readline" ]; then warn "you need USES+=readline" # ssl - elif [ ${pkg} = "security/openssl" -o ${pkg} = "security/openssl111" \ - -o ${pkg} = "security/libressl" -o ${pkg} = "security/libressl-devel" \ - ]; then + elif [ ${pkg} = "security/openssl" ] || [ ${pkg} = "security/openssl111" ] || \ + [ ${pkg} = "security/libressl" ] || [ ${pkg} = "security/libressl-devel" ]; then warn "you need USES=ssl" # Tcl elif expr ${pkg} : "^lang/tcl" > /dev/null; then @@ -678,9 +678,9 @@ EOT done <<-EOT $(list_stagedir_elfs | \ - file -F $'\1' -f - | \ + file -F "${SOH}" -f - | \ grep -a 'ELF.*FreeBSD.*dynamically linked' | \ - cut -f 1 -d $'\1'| \ + cut -f 1 -d "${SOH}"| \ sed -e 's/^\.//') EOT @@ -690,12 +690,14 @@ } sonames() { - [ ! -d ${STAGEDIR}${PREFIX}/lib -o -n "${BUNDLE_LIBS}" ] && return 0 + [ ! -d ${STAGEDIR}${PREFIX}/lib ] || [ -n "${BUNDLE_LIBS}" ] && return 0 while read -r f; do # No results presents a blank line from heredoc. [ -z "${f}" ] && continue # Ignore symlinks - [ -f "${f}" -a ! -L "${f}" ] || continue + if [ -f "${f}" ] && [ ! -L "${f}" ]; then + continue + fi if ! readelf -d ${f} | grep -q SONAME; then warn "${f} doesn't have a SONAME." warn "pkg(8) will not register it as being provided by the port." @@ -733,11 +735,11 @@ local portname version module gotsome [ -x "${LOCALBASE}/bin/corelist" ] || return 0 for dep in ${UNIFIED_DEPENDS}; do - portname=$(expr "${dep}" : ".*/p5-\(.*\)") + portname=$(expr "${dep}" : ".*/p5-\\(.*\\)") if [ -n "${portname}" ]; then gotsome=1 module=$(perlcore_port_module_mapping "${portname}") - version=$(expr "${dep}" : ".*>=*\([^:<]*\)") + version=$(expr "${dep}" : ".*>=*\\([^:<]*\\)") while read -r l; do case "${l}" in @@ -791,9 +793,9 @@ rc=1 done <<-EOF $(list_stagedir_elfs \ - | file -F $'\1' -f - -N \ + | file -F "${SOH}" -f - -N \ | grep -aE 'ELF .* [LM]SB .*, .*, version [0-9]+ \(FreeBSD\)' \ - | cut -f 1 -d $'\1') + | cut -f 1 -d "${SOH}") EOF return $rc } @@ -817,7 +819,7 @@ rc=1 fi <<-EOF $(${LOCALBASE}/bin/gem list -e "${name}" \ - | sed "s|.*(\(.*\))|\1|" \ + | sed "s|.*(\\(.*\\))|\\1|" \ | tr -d ' ' \ | tr , '\n') EOF @@ -855,7 +857,7 @@ fi # advise install of bundler if its not present for check - if ! type bundle > /dev/null 2>&1; then + if ! command -v bundle > /dev/null 2>&1; then notice "Please install sysutils/rubygem-bundler for additional Gemfile-checks" return 0 fi Index: Mk/Scripts/smart_makepatch.sh =================================================================== --- Mk/Scripts/smart_makepatch.sh +++ Mk/Scripts/smart_makepatch.sh @@ -25,9 +25,9 @@ # if those targets modify source files (e.g. with sed). You may also # want to disable EXTRA_PATCHES as well if that is being used. -[ -n "${DEBUG_MK_SCRIPTS}" -o -n "${DEBUG_MK_SCRIPTS_SMART_MAKEPATCH}" ] && set -x +[ -n "${DEBUG_MK_SCRIPTS}" ] || [ -n "${DEBUG_MK_SCRIPTS_SMART_MAKEPATCH}" ] && set -x -if [ -z "${PATCHDIR}" -o -z "${PATCH_WRKSRC}" -o -z "${WRKDIR}" ]; then +if [ -z "${PATCHDIR}" ] || [ -z "${PATCH_WRKSRC}" ] || [ -z "${WRKDIR}" ]; then echo "WRKDIR, PATCHDIR, and PATCH_WRKSRC required in environment." >&2 exit 1 fi @@ -245,9 +245,9 @@ cpatch=${DESTDIR}/${P} ppatch_stripped=$(mktemp -t portpatch) cpatch_stripped=$(mktemp -t portpatch) - egrep -v -- '--- .+ UTC$' ${ppatch} \ + grep -E -v -- '--- .+ UTC$' ${ppatch} \ > ${ppatch_stripped} - egrep -v -- '--- .+ UTC$' ${cpatch} \ + grep -E -v -- '--- .+ UTC$' ${cpatch} \ > ${cpatch_stripped} # Don't replace patches with only metadata changes if ! cmp -s ${ppatch_stripped} ${cpatch_stripped}; then