Files
BMLFS/build-scripts/libical.build
2024-06-13 11:28:10 -05:00

57 lines
2.0 KiB
Bash

#! /bin/bash
# libical
# Source: https://github.com/libical/libical/releases/download/v3.0.18/libical-3.0.18.tar.gz
#
# $BUILD = Directory to temporarily install
# $PKGS = Directory to store built packages
#
# DEPS
# Required: CMake
# Recommended: Gobject-Introspection, vala
# Optional: ICU, PyGobject, Doxygen, Berkeley DB
# If optimizing with GCC
export CFLAGS="-march=native -pipe "
export CFLAGS+="-O3 -ffat-lto-objects -flto=4 "
export LDFLAGS="-flto=4 -Wl,-O2 -Wl,--as-needed "
mkdir build &&
cd build &&
cmake -DCMAKE_INSTALL_PREFIX=/usr \
-DCMAKE_BUILD_TYPE=Release \
-DSHARED_ONLY=yes \
-DICAL_BUILD_DOCS=false \
-DGOBJECT_INTROSPECTION=true \
-DICAL_GLIB_VAPI=true \
.. &&
read -p "Compile?" && make -j2 &&
sudo -S make DESTDIR=$BUILD install &&
cd $BUILD && sudo -S mkdir -v ${BUILD}/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 ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
libical: libical (iCAL protocol implementation)
libical:
libical: libical is an Open Source (MPL/LGPL) implementation of the IETF's
libical: iCalendar Calendaring and Scheduling protocols. (RFC 2445, 2446, and
libical: 2447). It parses iCal components and provides C/C++/Python/Java APIs
libical: for manipulating the component properties, parameters, and
libical: subcomponents.
libical:
libical: Homepage: https://github.com/libical/libical
libical:
libical:
EOF
sudo -S mv -v /tmp/slack-desc install/ &&
sudo -S makepkg -l y -c n $PKGS/libical-3.0.18-$PSUFFIX &&
sudo -S rm -rf ${BUILD}/*