mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-16 19:50:19 +01:00
system/mbootpack: Fix 15.0 build.
Signed-off-by: B. Watson <yalhcru@gmail.com> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
parent
96d63f87e2
commit
ed93848ce5
2 changed files with 31 additions and 21 deletions
|
@ -1,8 +1,9 @@
|
|||
mbootpack (Multiboot kernel and modules)
|
||||
|
||||
This is a tool that takes a multiboot kernel and modules (e.g. a Xen VMM,
|
||||
linux kernel and initrd), and packages them up as a single file that looks
|
||||
like a bzImage linux kernel. The aim is to allow you to boot multiboot
|
||||
kernels (in particular, Xen) using bootloaders that don't support multiboot
|
||||
(i.e. pretty much anything except GRUB and SYSLINUX). This is, as you might
|
||||
expect, pretty grim stuff, involving lots of lovely 16-bit real-mode code.
|
||||
This is a tool that takes a multiboot kernel and modules (e.g. a Xen
|
||||
VMM, linux kernel and initrd), and packages them up as a single file
|
||||
that looks like a bzImage linux kernel. The aim is to allow you to
|
||||
boot multiboot kernels (in particular, Xen) using bootloaders that
|
||||
don't support multiboot (i.e. pretty much anything except GRUB and
|
||||
SYSLINUX). This is, as you might expect, pretty grim stuff, involving
|
||||
lots of lovely 16-bit real-mode code.
|
||||
|
|
|
@ -22,6 +22,11 @@
|
|||
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
# 20220210 bkw: Modified by SlackBuilds.org:
|
||||
# - BUILD=3.
|
||||
# - build with clang (gcc fails *hard*).
|
||||
# - only install the actual mbootpack binary in /usr/bin.
|
||||
|
||||
cd $(dirname $0) ; CWD=$(pwd)
|
||||
|
||||
PRGNAM=mbootpack
|
||||
|
@ -38,9 +43,6 @@ if [ -z "$ARCH" ]; then
|
|||
esac
|
||||
fi
|
||||
|
||||
# If the variable PRINT_PACKAGE_NAME is set, then this script will report what
|
||||
# the name of the created package would be, and then exit. This information
|
||||
# could be useful to other scripts.
|
||||
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
|
||||
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
|
||||
exit 0
|
||||
|
@ -75,25 +77,32 @@ cd $PRGNAM-$VERSION
|
|||
chown -R root:root .
|
||||
find -L . \
|
||||
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
|
||||
-o -perm 511 \) -exec chmod 755 {} \; -o \
|
||||
-o -perm 511 \) -exec chmod 755 {} \+ -o \
|
||||
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
|
||||
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
|
||||
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \+
|
||||
|
||||
# Some fixes from ALT Linux folks
|
||||
patch -p1 <$CWD/patches/mbootpack-0.6a-alt3.patch
|
||||
|
||||
make
|
||||
# 20220210 bkw: actually use SLKCFLAGS.
|
||||
sed -i -e "s,-O3,$SLKCFLAGS," Makefile
|
||||
|
||||
# We have to do things manually since mbootpack doesn't have make install
|
||||
# 20220210 bkw: speeds up the sed scripts slightly.
|
||||
export LANG=C
|
||||
|
||||
# 20220210 bkw: gcc fails *badly* at compiling this, and I'm not sure why.
|
||||
# We end up with giant (like 130MB) .c source files and gcc either gets
|
||||
# OOM-killed or starves everything else of CPU. clang seems fine though.
|
||||
# -I- is an error in clang.
|
||||
sed -i -e 's,-I-,-iquote,' Makefile
|
||||
make CC=clang
|
||||
|
||||
# We have to do things manually since mbootpack doesn't have make install.
|
||||
# 20220210 bkw: looking at the ALT linux package, the bootsect, mkhex,
|
||||
# setup binaries don't belong in the package.
|
||||
mkdir -p $PKG/usr/{bin,man/man1}
|
||||
cp -a bootsect mbootpack mkhex setup $PKG/usr/bin
|
||||
cp -a mbootpack.man $PKG/usr/man/man1/mbootpack.1
|
||||
|
||||
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
|
||||
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
|
||||
|
||||
find $PKG/usr/man -type f -exec gzip -9 {} \;
|
||||
for i in $( find $PKG/usr/man -type l ) ; do ln -s $( readlink $i ).gz $i.gz ; rm $i ; done
|
||||
install -s $PRGNAM $PKG/usr/bin
|
||||
gzip -9c $PRGNAM.man > $PKG/usr/man/man1/$PRGNAM.1.gz
|
||||
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a Changes GPL README $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
|
|
Loading…
Reference in a new issue