# Prerequisites:
# OpenSSL (...if you want libevent_openssl)
# Get it
cd
test -f installed/libevent-2.1.12-stable.tar.gz &&
mv -f installed/libevent-2.1.12-stable.tar.gz .
test ! -f libevent-2.1.12-stable.tar.gz &&
wget https://github.com/libevent/libevent/releases/download/\
release-2.1.12-stable/libevent-2.1.12-stable.tar.gz
# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
tar xzvf ~/libevent-2.1.12-stable.tar.gz
cd libevent-2.1.12-stable
test $UID = 0 && chown -R root:root .
# Configure the build - 64-bit with /usr/local/ssl/lib64
test -d /usr/local/ssl/lib64 &&
test $(uname -m) = 'x86_64' &&
LDFLAGS=-L/usr/local/ssl/lib64 CPPFLAGS=-I/usr/local/ssl/include \
./configure --prefix=/usr --libdir=/usr/lib64
# Configure the build - 64-bit without /usr/local/ssl/lib64
test ! -d /usr/local/ssl/lib64 &&
test $(uname -m) = 'x86_64' &&
./configure --prefix=/usr --libdir=/usr/lib64
# Configure the build - anything else
test $(uname -m) != 'x86_64' &&
./configure --prefix=/usr
# Build it
make
# Test the build
make verify
# Become root to install it
su
# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg libevent
# If you are sure they are no longer in use, perhaps after running lsof to
# check, zap old version library files
for libdir in /usr/lib /usr/lib64;
do
( test -d "$libdir" &&
cd "$libdir" &&
rm -f libevent-2.*.so* libevent.a libevent.la libevent.so libevent_* )
done
# Install it
make install
ldconfig
# Become your non-root user again
exit
# Keep the source for later
cd
mkdir -p -m 0700 installed
rm -f installed/libevent-*.tar.*
mv -f libevent-2.1.12-stable.tar.gz installed/
# If you ever want to uninstall libevent, this should do it:
cd
su
test -d src/libevent-* && ( cd src/libevent-* ; make uninstall )
( cd /usr/include
rm -f event.h evdns.h evhttp.h evrpc.h evutil.h )
test -d /usr/include/event2 && rm -r /usr/include/event2
( cd /usr/lib64
rm -f libevent.* libevent_core.* libevent_extra.* libevent_pthreads.* \
libevent_openssl.* )
( cd /usr/lib64/pkgconfig
rm -f libevent.pc libevent_openssl.pc libevent_pthreads.pc )
rm -f /usr/bin/event_rpcgen.py
ldconfig
exit
find ~/src -maxdepth 1 -type d -name "libevent-*" -exec rm -r {} \;
rm -f ~/installed/libevent-*.tar.*