#! /bin/bash # JSON-C # Source: https://s3.amazonaws.com/json-c_releases/releases/json-c-0.16.tar.gz # # $BUILD = Directory to temporarily install # $PKGS = Directory to store built packages # # DEPS # Required: CMake # Recommended: NONE # Optional: NONE # If optimizing with GCC export CFLAGS="-march=native -pipe " export CFLAGS+="-O3 -ffat-lto-objects -flto=4 " export CFLAGS+="-fstack-protector-strong -fzero-call-used-regs=used " export LDFLAGS="-flto=4 -Wl,-O2 -Wl,--as-needed " mkdir build && cd build && cmake -DCMAKE_INSTALL_PREFIX=/usr \ -DCMAKE_BUILD_TYPE=Release \ -DBUILD_STATIC_LIBS=ON \ -DDISABLE_WERROR=ON \ -DENABLE_THREADING=ON .. 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------------------------------------------------------| json-c: json-c (JSON library in C) json-c: json-c: json-c implements a reference counting object model that allows you json-c: to easily construct JSON objects in C. json-c: json-c: Website : http://oss.metaparadigm.com/json-c/ json-c: json-c: json-c: json-c: json-c EOF sudo -S mv -v /tmp/slack-desc install/ && sudo -S makepkg -l y -c n $PKGS/json-c-0.16-$PSUFFIX && sudo -S rm -rf ${BUILD}/*