#! /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}/*