Compare commits

...

No commits in common. "c8" and "c8s" have entirely different histories.
c8 ... c8s

50 changed files with 177 additions and 0 deletions

30
STAGE2-redhat-rpm-config Normal file
View File

@ -0,0 +1,30 @@
#requires libtool
cd $SRC/redhat-rpm-config-*
# makefile has been removed :/
# make install
RCCDIR=/usr/lib/rpm/redhat
RPMCFGDIR=/usr/lib/rpm
RPMFATTR=/usr/lib/rpm/fileattrs
mkdir -p /usr/lib/rpm/redhat
install -p -m 644 -t $RCCDIR macros rpmrc
install -p -m 444 -t $RCCDIR redhat-hardened-*
install -p -m 755 -t $RCCDIR config.*
install -p -m 755 -t $RCCDIR dist.sh rpmsort symset-table kmodtool
install -p -m 755 -t $RCCDIR brp-*
install -p -m 755 -t $RCCDIR find-*
mkdir -p $RCCDIR/find-provides.d
install -p -m 644 -t $RCCDIR/find-provides.d firmware.prov modalias.prov
mkdir -p $RPMCFGDIR/macros.d
install -p -m 644 -t $RPMCFGDIR/macros.d macros.*
mkdir -p $RPMFATTR
install -p -m 644 -t $RPMFATTR *.attr
install -p -m 755 -t $RPMCFGDIR kmod.prov
cp -p /usr/share/libtool/config/config.{guess,sub} $RCCDIR/

34
brp-implant-ident-static Executable file
View File

@ -0,0 +1,34 @@
#!/bin/bash
# If using normal root, avoid changing anything.
if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
exit 0
fi
tempdir=`mktemp -d /tmp/implant-ident-XXXXXX`
if test -z "$tempdir" ; then
exit 1
fi
cleanup() {
rm -f $tempdir/*
rmdir $tempdir
}
trap cleanup 0 1 2 3 4 5 6 7 8 9 11 13 14 15
for library in `find $RPM_BUILD_ROOT -type f -exec file \{\} \; | grep 'current ar archive' | sed 's,:.*,,g' ` ; do
pushd $tempdir > /dev/null
if test -n "$RPM_BUILD_ROOT" ; then
cleanedlibrary=`echo "$library" | sed s,"$RPM_BUILD_ROOT",,g`
else
cleanedlibrary="$library"
fi
ar x "$library"
for object in *.o ; do
echo '$RPM: '${RPM_PACKAGE_NAME:-UNKNOWN_NAME}-${RPM_PACKAGE_VERSION:-UNKNOWN_VERSION}-${RPM_PACKAGE_RELEASE:-UNKNOWN_RELEASE}:"$cleanedlibrary":"$object"' $' > __x_rpm_ident_string.txt
objcopy --add-section .rodata=__x_rpm_ident_string.txt "$object"
ar r "$library" "$object"
done
rm -f *.o
popd > /dev/null
done

105
brp-java-repack-jars Executable file
View File

@ -0,0 +1,105 @@
#!/bin/sh
# If using normal root, avoid changing anything.
if [ -z "$RPM_BUILD_ROOT" -o "$RPM_BUILD_ROOT" = "/" ]; then
exit 0
fi
# If zip is not installed, we can't repack the jars.
if [ ! -x /usr/bin/zip ]; then
exit 0
fi
if [ ! -x /usr/bin/unzip ]; then
exit 0
fi
JARS=`find $RPM_BUILD_ROOT -type f -name \*.jar -not -size 0`
if [ ! -z "$JARS" ]; then
# make $RPM_BUILD_ROOT/tmp if it doesn't exist
rmtmp=0
if [ ! -x "$RPM_BUILD_ROOT/tmp" ]; then
mkdir -p $RPM_BUILD_ROOT/tmp
rmtmp=1
fi
# unpack every jar, set the date of the files and directories and
# repack the jar
OLD_IFS="$IFS"
IFS=$(printf '\n\t')
for j in $JARS ; do
JARNAME=`basename "$j"`
JTMPDIR=`mktemp -d -p $RPM_BUILD_ROOT/tmp "$JARNAME.tmpdir.XXXXXXXXXX"` || exit 1
JARDIR=`mktemp -d -p $RPM_BUILD_ROOT/tmp "$JARNAME.jardir.XXXXXXXXXX"` || exit 1
TIMEREF=`mktemp -p $RPM_BUILD_ROOT/tmp "$JARNAME.timeref.XXXXXXXXXX"` || exit 1
pushd "$JTMPDIR" > /dev/null
/usr/bin/unzip -qq -o "$j"
find -type d -exec chmod a+rx,u+w {} \;
find -type f -exec chmod a+r,u+w {} \;
rm -f "$j"
# Create the directories first.
find -type d | LC_ALL=C sort | while read d; do
mkdir -p "$JARDIR/$d"
done
# Get the modtime from the newest ChangeLog. If the project
# doesn't have a ChangeLog, Jan 1, 1970 will be used.
DATE="1970-01-01 UTC"
if [ -z $_PACKAGE_BUILD_DIR ]; then
_PACKAGE_BUILD_DIR=$RPM_BUILD_DIR/$RPM_PACKAGE_NAME-$RPM_PACKAGE_VERSION
fi
if [ -d $_PACKAGE_BUILD_DIR ]; then
CHANGELOGS=`find $_PACKAGE_BUILD_DIR -type f -name ChangeLog`
if [ ! -z "$CHANGELOGS" ]; then
for c in $CHANGELOGS; do
TMPDATE=`stat -c %y $c | cut -d " " -f 1-2`
if [ `date --date="$TMPDATE" +%s` -gt `date --date="$DATE" +%s` ]; then
DATE="$TMPDATE"
fi
done
fi
fi
# move the contents over to the a new directory in order and set
# the times.
find -type f | LC_ALL=C sort | while read f; do
cp "$f" "$JARDIR/$f"
touch --date="$DATE" "$JARDIR/$f"
done
popd > /dev/null
# Set the times of the directories.
find "$JARDIR" -type d | while read d; do
touch --date="$DATE" "$d"
done
# make the jar
pushd "$JARDIR" > /dev/null
if [ -n "`find -not -name '.'`" ]; then
if [ -e META-INF/MANIFEST.MF ]; then
/usr/bin/zip -q -X -9 "$j" META-INF/MANIFEST.MF
fi
find * -not -name '.' | LC_ALL=C sort | /usr/bin/zip -u -q -X -9 "$j" -@
else
# Put the empty jar back
touch "$j"
fi
popd > /dev/null
# Cleanup.
rm -rf "$JTMPDIR"
rm -rf "$JARDIR"
rm -f "$TIMEREF"
done
IFS="$OLD_IFS"
# remove $RPM_BUILD_ROOT/tmp if we created it
if [ $rmtmp -eq 1 ]; then
rm -rf $RPM_BUILD_ROOT/tmp
fi
fi

View File

7
gating.yaml Normal file
View File

@ -0,0 +1,7 @@
--- !Policy
product_versions:
- rhel-8
decision_context: osci_compose_gate
rules:
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1-gating.functional}
- !PassingTestCaseRule {test_case_name: osci.brew-build.rebuild.validation}

1
rpmlint.cf Normal file
View File

@ -0,0 +1 @@
addFilter("no-%build-section")