57 lines
1.1 KiB
Bash
Executable File
57 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
set -x
|
|
set -e
|
|
|
|
TMP=$(mktemp -d /tmp/rpmbuild.XXXXXX)
|
|
|
|
function cleanup() {
|
|
[[ -d $TMP ]] && rm -rf $TMP
|
|
}
|
|
trap cleanup EXIT
|
|
|
|
# install python dependencies for test
|
|
if [ -f os-release ]; then
|
|
. os-release
|
|
fi
|
|
if [[ $VERSION_ID -lt 30 ]]; then
|
|
PKGS="python3-cachetools python-cachetools"
|
|
else
|
|
PKGS="python3-cachetools"
|
|
fi
|
|
sudo dnf install -y $PKGS
|
|
|
|
mkdir $TMP/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
|
|
|
|
llvmver=3.7.1
|
|
|
|
# populate submodules
|
|
git submodule update --init --recursive
|
|
|
|
. scripts/git-tag.sh
|
|
|
|
git archive HEAD --prefix=bcc/ --format=tar -o $TMP/SOURCES/bcc.tar
|
|
|
|
# archive submodules
|
|
pushd src/cc/libbpf
|
|
git archive HEAD --prefix=bcc/src/cc/libbpf/ --format=tar -o $TMP/SOURCES/bcc_libbpf.tar
|
|
popd
|
|
|
|
# merge all archives into bcc.tar.gz
|
|
pushd $TMP/SOURCES
|
|
tar -A -f bcc.tar bcc_libbpf.tar
|
|
gzip bcc.tar
|
|
popd
|
|
|
|
sed \
|
|
-e "s/^\(Version:\s*\)@REVISION@/\1$revision/" \
|
|
-e "s/^\(Release:\s*\)@GIT_REV_COUNT@/\1$release/" \
|
|
SPECS/bcc.spec > $TMP/SPECS/bcc.spec
|
|
|
|
pushd $TMP
|
|
rpmbuild $RPM_WITH_OPTS --define "_topdir `pwd`" -ba SPECS/bcc.spec
|
|
popd
|
|
|
|
cp $TMP/RPMS/*/*.rpm .
|
|
cp $TMP/SRPMS/*.rpm .
|