Files
BMLFS/build-scripts/pcre2.build
2023-09-12 14:16:30 -05:00

83 lines
3.0 KiB
Bash

#! /bin/bash
# PCRE2
# Source: https://github.com/PhilipHazel/pcre2/releases/download/pcre2-10.39/pcre2-10.39.tar.bz2
# Source: https://github.com/PCRE2Project/pcre2/releases/download/pcre2-10.42/pcre2-10.42.tar.bz2
#
# $BUILD = Directory to temporarily install
# $PKGS = Directory to store built package
#
# DEPS
# Required: NONE
# Recommended: NONE
# Optional: libedit, valgrind
# LTO: Tested with GCC=Binutils
# If coptimizing:
export CFLAGS="-march=native -mtune=native -pipe "
export CFLAGS+="-O3 -Ofast -falign-functions=32 "
export CFLAGS+="-ffat-lto-objects -flto=auto "
export CFLAGS+="-fno-semantic-interposition -mprefer-vector-width=256 "
export LDFLAGS="-flto=auto -Wl,-O2 -Wl,--as-needed "
./configure --prefix=/usr \
--docdir=/usr/share/doc/pcre2-10.42 \
--enable-unicode \
--enable-jit \
--enable-pcre2-16 \
--enable-pcre2-32 \
--enable-pcre2grep-libz \
--enable-pcre2grep-libbz2 \
--enable-pcre2test-libreadline \
--disable-static $BUILDTRUPLE &&
read -p "Compile? " && make -j2 &&
read -p "Press Enter to install" &&
sudo -S make DESTDIR=$BUILD install &&
sudo -S mkdir -pv /BMAN/install
sudo -S mkdir -pv /BMAN/usr
sudo -S mv $BUILD/usr/share /BMAN/usr/
read -p "Press Enter to create package description." &&
cd $BUILD && sudo mkdir -v install &&
cat > /tmp/slack-desc << "EOF"
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description. Line
# up the first '|' above the ':' following the base package name, and the '|' on
# the right side marks the last column you can put a character in. You must make
# exactly 11 lines for the formatting to be correct. It's also customary to
# leave one space after the ':'.
|-----handy-ruler------------------------------------------------------|
pcre2: pcre2 (Perl Compatible Regular Expression Libraries)
pcre2:
pcre2: The PCRE2 package contains a new generation of the Perl Compatible
pcre2: Regular Expression libraries. These are useful for implementing
pcre2: regular expression pattern matching using the same syntax and
pcre2: semantics as Perl.
pcre2:
pcre2:
pcre2:
pcre2:
pcre2:
EOF
sudo mv /tmp/slack-desc install/ &&
read -p "Enter to build package" &&
sudo makepkg -l y -c n $PKGS/pcre2-10.42-${PSUFFIX} &&
cd /BMAN
cat > /tmp/slack-desc << "EOF"
pcre2-doc: Manuals for pcre2 (Perl Compatible Regular Expression Libraries)
pcre2-doc:
pcre2-doc: The PCRE2 package contains a new generation of the Perl Compatible
pcre2-doc: Regular Expression libraries. These are useful for implementing
pcre2-doc: regular expression pattern matching using the same syntax and
pcre2-doc: semantics as Perl.
pcre2-doc:
EOF
sudo mv /tmp/slack-desc install/ &&
sudo makepkg -l y -c n $PKGS/pcre2-doc-10.42-${NOPSUFFIX}
sudo rm -rf /BMAN/*
sudo rm -rf $BUILD/*