diff options
Diffstat (limited to 'shell-scripts/mock-build-prepare.sh')
-rwxr-xr-x | shell-scripts/mock-build-prepare.sh | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/shell-scripts/mock-build-prepare.sh b/shell-scripts/mock-build-prepare.sh new file mode 100755 index 0000000..d3b0d60 --- /dev/null +++ b/shell-scripts/mock-build-prepare.sh @@ -0,0 +1,105 @@ +#!/bin/bash + +# +# Rebase to nss and nspr using mock to build +# Using beta candidates +# + +export_tags() { +export nspr_v=${NSPR_V} +export nspr_r=${NSPR_R} +export nss_v=${NSS_V} +export nss_r=${NSS_R} +export nss_util_v=${NSS_UTIL_V} +export nss_util_r=${NSS_UTIL_R} +export nss_softokn_v=${NSS_SOFTOKN_V} +export nss_softokn_r=${NSS_SOFTOKN_R} +export target=${TARGET} +export dist=${DIST} +export arch=${ARCH} +export archalso=${ARCHALSO} +} + +#---------------------------------------------------------- + +# Defaults are mostly empty, so that package won't be built +# unless two values {version,release} are passed in +nspr_v= +nspr_r= +nss_v= +nss_r= +nss_util_v= +nss_util_r= +nss_softokn_v= +nss_softokn_r= + +target=16 +dist=f16 + +arch=x86_64 +archalso=x86_64 + +while getopts :a:b:c:d:e:f:g:h:i:j: opt +do + case $opt in + a) nspr_v="$OPTARG";; + b) nspr_r="$OPTARG";; + c) nss_v="$OPTARG";; + d) nss_r="$OPTARG";; + e) nss_util_v="$OPTARG";; + f) nss_util_r="$OPTARG";; + g) nss_softokn_v="$OPTARG";; + h) nss_softokn_r="$OPTARG";; + i) target="$OPTARG";; + j) arch="$OPTARG";; + ?) printf "Usage: %s [-a nspr_v] [-b nspr_r] [-c nss_version] [-d nss_r] [-e nss_util_v] [-f nss_util_r] [-g nss_softokn_v] [-h nss_softokn_r] [-i dist] [-j arch]\n" $0 + exit 2;; + esac +done + +if [ "${TARGET}" = "rawhide" ]; then + # change as we move along + TARGET = f17 + DIST="rawhide" +fi +if [ "${ARCH}" = "i386" ]; then + ARCHALSO="i686" +fi + +echo "nspr_v=${nspr_v}" +echo "nspr_r=${nspr_r}" +echo "nss_v=${nss_v}" +echo "nss_r=${nss_r}" +echo "nss_util_v=${nss_util_v}" +echo "nss_util_r=${nss_util_r}" +echo "nss_softokn_v=${nss_softokn_v}" +echo "nss_softokn_r=${nss_softokn_r}" +echo "target=${target}" +echo "dist=${dist}" +echo "arch=${arch}" +echo "archalso=${archalso}" + +# initialize the mock environment and install +# packages we will need later when building nss +mock -r fedora-${dist}-${arch} --init +mock -r fedora-${dist}-${arch} --install sqlite-devel zlib-devel pkgconfig gawk psmisc perl vim +mock -r fedora-${dist}-${arch} --install nspr-devel nss-util-devel nss-softokn-devel nss-devel + +nssPkgs="nspr nss-util nss_softokn nss" +for pkg in $nssPkgs; do + if [ -n ${pkg}_v} ] && [ -n ${pkg}_r ]; then + cd ${pkg}; fedpkg clean; fedpkg srpm + # mock -r fedora-${dist}-${arch} --installdeps ${pkg}-*.fc${target}.src.rpm + mock -r fedora-${dist}-${arch} --copyin ${pkg}-*.fc${target}.src.rpm /tmp + fi +done- + +# copy the build script into mock +mock -r fedora-${dist}-${arch} --copyin ./mock-build-inside.sh /usr/bin +mock -r fedora-${dist}-${arch} --copyin ./mock-build-install-nss.sh /usr/bin +mock -r fedora-${dist}-${arch} --copyin ./install-clients-deps.sh /usr/bin + +# create a mock shell +#mock -r fedora-${dist}-${arch} --shell +#exit +# mock-build-inside.sh -a ${nspr_v} -b ${nspr_r} -c ${nss_version} -d ${nss_r} -e ${dist} -f ${arch} |