# If you ever want to uninstall Brotli, go in to the source
# directory, then out, then become root and remove everything
# listed in install_manifest.txt (and the source and tarball)
# Get the source
cd
test -f installed/brotli-1.1.0.tar.gz &&
mv -f installed/brotli-1.1.0.tar.gz .
test ! -f brotli-1.1.0.tar.gz &&
wget -O brotli-1.1.0.tar.gz \
https://github.com/google/brotli/archive/refs/tags/v1.1.0.tar.gz
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -type d -maxdepth 1 -name "brotli-*" -exec rm -r {} \;
tar xzvf ~/brotli-1.1.0.tar.gz
cd brotli-1.1.0
test $UID = 0 && chown -R root:root .
# Create a build directory
mkdir out
cd out
# See ../CMakeLists.txt for other build options
# Configure the build for 64-bit:
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_INSTALL_LIBDIR=/usr/lib64 ..
# Configure the build for anything else:
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr ..
# Build it
make
# Test the build
make test
# Become root to install it
su
# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg brotli
# Install Brotli
make install
ldconfig
# To uninstall this source-installed version of Brotli, refer to
# the list of every installed file: install_manifest.txt
# Become your non-root user again
exit
# Save the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/brotli-*.tar.*
mv -f brotli-1.1.0.tar.gz installed/