From d0ad4ec4838a6d3cc63ad3e181cd74b783d41c96 Mon Sep 17 00:00:00 2001 From: Konrad J Hambrick Date: Fri, 29 Apr 2022 11:35:46 +0100 Subject: libraries/rabbitmq-c: Updated for version 0.11.0. Signed-off-by: Dave Woodfall Signed-off-by: Willy Sudiarto Raharjo --- libraries/rabbitmq-c/README | 48 +++++++++++++++++++++++-- libraries/rabbitmq-c/rabbitmq-c.SlackBuild | 58 ++++++++++++++++++++++++++---- libraries/rabbitmq-c/rabbitmq-c.info | 8 ++--- 3 files changed, 101 insertions(+), 13 deletions(-) (limited to 'libraries') diff --git a/libraries/rabbitmq-c/README b/libraries/rabbitmq-c/README index c9c03a2d15726..5eda5e78fe2ac 100644 --- a/libraries/rabbitmq-c/README +++ b/libraries/rabbitmq-c/README @@ -1,11 +1,55 @@ This is a C-language AMQP client library for use with v2.0+ of the RabbitMQ broker. -Under the /usr/doc/rabbitmq-c-$VERSION/ directory are examples/ and -tests/ subdirectories. +* `BUILD_EXAMPLES=ON/OFF` toggles building the examples. + OFF by default. + +* `BUILD_SHARED_LIBS=ON/OFF` toggles building rabbitmq-c as a shared + library. + ON by default. + +* `BUILD_STATIC_LIBS=ON/OFF` toggles building rabbitmq-c as a static + library. + OFF by default. + +* `BUILD_TESTS=ON/OFF` toggles building test code. + OFF by default. + +* `BUILD_TOOLS=ON/OFF` toggles building the command line tools. + ON by default. + +* `BUILD_TOOLS_DOCS=ON/OFF` toggles building the man pages for the + command line tools. + ON by default if BUILD_TOOLS is ON and xmlto is installed. + +* `ENABLE_SSL_SUPPORT=ON/OFF` toggles building rabbitmq-c with SSL + support. + ON by default if the OpenSSL headers and library can be found. + +* `BUILD_API_DOCS=ON/OFF` toggles building the Doxygen API documentation + OFF by default. + +* `RUN_SYSTEM_TESTS=ON/OFF` toggles building the system tests. Tests + require an accessible RabbitMQ server instance on localhost. + OFF by default. + +If BUILD_EXAMPLES=ON or BUILD_TESTS=ON then executable programs will +be compiled from sources in /usr/doc/rabbitmq-c-$VERSION/examples/src/ +-and-or- /usr/doc/rabbitmq-c-$VERSION/examples/src/ The Extra Programs +will be installed in /usr/doc/rabbitmq-c-$VERSION/{examples,tests}/bin/ + +For Example, to build examples and tests: + +BUILD_EXAMPLES=ON BUILD_TESTS=ON ./rabbitmq-c.SlackBuild To build a nice html Doxygen API documentation tree in the directory /usr/doc/rabbitmq-c-$VERSION/html/ you need to pass BUILD_API_DOCS=ON to the script, for example BUILD_API_DOCS=ON ./rabbitmq-c.SlackBuild + +To build examples, tests and the html documentation: + +BUILD_EXAMPLES=ON \ +BUILD_TESTS=ON \ +BUILD_API_DOCS=ON ./rabbitmq-c.SlackBuild diff --git a/libraries/rabbitmq-c/rabbitmq-c.SlackBuild b/libraries/rabbitmq-c/rabbitmq-c.SlackBuild index a5df7a8885c30..4b1c17b5d3e7f 100644 --- a/libraries/rabbitmq-c/rabbitmq-c.SlackBuild +++ b/libraries/rabbitmq-c/rabbitmq-c.SlackBuild @@ -21,15 +21,26 @@ # WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR # OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF # ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - +# cd $(dirname $0) ; CWD=$(pwd) - + PRGNAM=rabbitmq-c -VERSION=${VERSION:-0.8.0} +VERSION=${VERSION:-0.11.0} BUILD=${BUILD:-1} TAG=${TAG:-_SBo} PKGTYPE=${PKGTYPE:-tgz} +# these are rabbitmq-c CMake default options that are incompatible +# with a SlackBuild. When turned on executables will be in the +# /usr/doc/$PRGNAM-$VERSION/{examples,tests}/bin/ directories +BUILD_EXAMPLES=${BUILD_EXAMPLES:-OFF} +BUILD_TESTS=${BUILD_TESTS:-OFF} +BUILD_TOOLS_DOCS=${BUILD_TOOLS_DOCS:-ON} + +# from CMakeLists.txt: tests and examples require the static library +[ "$BUILD_TESTS" = "ON" +-o "$BUILD_EXAMPLES" = "ON" ] && BUILD_STATIC_LIBS=ON + if [ -z "$ARCH" ]; then case "$( uname -m )" in i?86) ARCH=i586 ;; @@ -70,7 +81,7 @@ rm -rf $PKG mkdir -p $TMP $PKG $OUTPUT cd $TMP rm -rf $PRGNAM-$VERSION -tar xvf $CWD/$PRGNAM-$VERSION.tar.gz +tar -xvf $CWD/$PRGNAM-$VERSION.tar.gz cd $PRGNAM-$VERSION chown -R root:root . find -L . \ @@ -108,11 +119,44 @@ fi for d in examples tests; do mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$d/src - cp -a $d/* $PKG/usr/doc/$PRGNAM-$VERSION/$d/src/ - mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/$d/bin - cp -a build/$d/* $PKG/usr/doc/$PRGNAM-$VERSION/$d/bin/ + cp -a $d/* $PKG/usr/doc/$PRGNAM-$VERSION/$d/src/ || true done +if [ "$BUILD_EXAMPLES" = "ON" ] ; then + mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/examples/bin + cp -a build/examples/* $PKG/usr/doc/$PRGNAM-$VERSION/examples/bin/ || true +fi +if [ "$BUILD_TESTS" = "ON" ] ; then + mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION/tests/bin + cp -a build/tests/* $PKG/usr/doc/$PRGNAM-$VERSION/tests/bin/ || true +fi + +# maybe make man entries in /usr/man/man1 and /usr/man/man7 +if [ -x `which xmlto` ] ; then + if [ "$BUILD_TOOLS" != "OFF" -a "$BUILD_TOOLS_DOCS" != "OFF" ] ; + then + mkdir -p $PKG/usr/man || true + cd $TMP/$PRGNAM-$VERSION/tools/doc + touch man-date.ent + + for x in *.xml ; do + xmlto man $x + done + + for m in *.[1-9] ; do + s="$(echo $m |awk -F'.' '{ print $NF }')" + + [ "$s" = "" ] && continue + + d="$PKG/usr/man/man${s}" + + [ ! -d "$d" ] && mkdir -p "$d" + + gzip < $m > $d/$m.gz + done + fi +fi + mkdir -p $PKG/install cat $CWD/slack-desc > $PKG/install/slack-desc diff --git a/libraries/rabbitmq-c/rabbitmq-c.info b/libraries/rabbitmq-c/rabbitmq-c.info index 5117db9d2edc3..609bef612fd6b 100644 --- a/libraries/rabbitmq-c/rabbitmq-c.info +++ b/libraries/rabbitmq-c/rabbitmq-c.info @@ -1,8 +1,8 @@ PRGNAM="rabbitmq-c" -VERSION="0.8.0" -HOMEPAGE="https://github.com/alanxz/rabbitmq-c/releases" -DOWNLOAD="https://github.com/alanxz/rabbitmq-c/releases/download/v0.8.0/rabbitmq-c-0.8.0.tar.gz" -MD5SUM="c15dbcd2dbb8e254c1de0494c1bb8c91" +VERSION="0.11.0" +HOMEPAGE="https://github.com/alanxz/rabbitmq-c" +DOWNLOAD="https://github.com/alanxz/rabbitmq-c/archive/refs/tags/v0.11.0/rabbitmq-c-0.11.0.tar.gz" +MD5SUM="e7d9896577aea6351811d7c1d7f0a68a" DOWNLOAD_x86_64="" MD5SUM_x86_64="" REQUIRES="rabbitmq-server" -- cgit v1.2.3