From patchwork Mon Mar 8 12:00:25 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adolf Belka X-Patchwork-Id: 3935 Return-Path: Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by web04.haj.ipfire.org (Postfix) with ESMTPS id 4DvH3K5L74z3wwp for ; Mon, 8 Mar 2021 12:00:29 +0000 (UTC) Received: from mail02.haj.ipfire.org (mail02.haj.ipfire.org [172.28.1.201]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail02.haj.ipfire.org", Issuer "R3" (verified OK)) by mail01.ipfire.org (Postfix) with ESMTPS id 4DvH3K2Tkvz4WD; Mon, 8 Mar 2021 12:00:29 +0000 (UTC) Received: from mail02.haj.ipfire.org (localhost [127.0.0.1]) by mail02.haj.ipfire.org (Postfix) with ESMTP id 4DvH3K1qKGz2yDf; Mon, 8 Mar 2021 12:00:29 +0000 (UTC) Received: from mail01.ipfire.org (mail01.haj.ipfire.org [172.28.1.202]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) client-signature ECDSA (P-384)) (Client CN "mail01.haj.ipfire.org", Issuer "R3" (verified OK)) by mail02.haj.ipfire.org (Postfix) with ESMTPS id 4DvH3J1F9Jz2xJj for ; Mon, 8 Mar 2021 12:00:28 +0000 (UTC) Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-384) server-digest SHA384) (No client certificate requested) by mail01.ipfire.org (Postfix) with ESMTPSA id 4DvH3H3KtSz24d; Mon, 8 Mar 2021 12:00:27 +0000 (UTC) DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003ed25519; t=1615204827; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=4K+dbbMUQAeS/8ietYYcvK7bqCB8cVhVoBedyscrFw8=; b=Of/XsmlvhlEz0o3PSMSs1yr3vq73LJ7zjPhiMyhN8W6/lEvVXhzP+ocO9rcrg7WBE7lFoL Y/nk9ZbajhXakhBA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ipfire.org; s=202003rsa; t=1615204827; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=4K+dbbMUQAeS/8ietYYcvK7bqCB8cVhVoBedyscrFw8=; b=pSjmaDBUGgw9b5mFFS/759eDgLxtfJY21KSJ37nasToGDwwi4647y4fDmpgFnP36RvLrqy I39Sjit97v8rU6Fgp/qKKguAjTuMqR2O/AhrbY+Oao1tkm9gzC9o6y8alzu6W088eDMR1w kzsCnbPEBkzFqsp65DAPldd3qiKhtf7y7kLn/7hshrPOsJlaC4+uW0w5mwb6qklbgZsUAB Rduv10CQv/RlpGUFohpv+QoPy7Fh5792VPTup1lMUFrC8IjJnIjHdpUtVPBrWsCgXIJgfm 9+goqC7JzPm2D1NQeUoKysCUmwvybXRkWfVZVCvbkYPpVEJ3w5+LBZ1fLOE81w== From: "Adolf Belka (ipfire)" To: development@lists.ipfire.org Subject: [PATCH 2/2] libcdada: New addon - dependency for pmacct Date: Mon, 8 Mar 2021 13:00:25 +0100 Message-Id: <20210308120025.2100-1-adolf.belka@ipfire.org> MIME-Version: 1.0 X-BeenThere: development@lists.ipfire.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: IPFire development talk List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: development-bounces@lists.ipfire.org Sender: "Development" From: Adolf Belka - This package is required for its library which is a dependency for pmacct - url for developer is https://msune.github.io/libcdada/ - patch is required to allow disabling of staic library Makefiles for tests and examples explicitly uses static library The patch changes all .a to .so Co-authored-by: Jon Murphy Co-authored-by: Erik Kapfer Signed-off-by: Adolf Belka --- config/rootfiles/packages/libcdada | 28 ++++++ lfs/libcdada | 87 +++++++++++++++++++ ...library-for-tests-and-examples-build.patch | 56 ++++++++++++ 3 files changed, 171 insertions(+) create mode 100644 config/rootfiles/packages/libcdada create mode 100644 lfs/libcdada create mode 100644 src/patches/libcdada-0.3.4-use-shared-library-for-tests-and-examples-build.patch diff --git a/config/rootfiles/packages/libcdada b/config/rootfiles/packages/libcdada new file mode 100644 index 000000000..b3b1b99b1 --- /dev/null +++ b/config/rootfiles/packages/libcdada @@ -0,0 +1,28 @@ +#usr/bin/cdada-gen +#usr/include/cdada +#usr/include/cdada.h +#usr/include/cdada/__common_internal.h +#usr/include/cdada/__list_internal.h +#usr/include/cdada/__map_internal.h +#usr/include/cdada/__queue_internal.h +#usr/include/cdada/__set_internal.h +#usr/include/cdada/__stack_internal.h +#usr/include/cdada/bbitmap.h +#usr/include/cdada/list.h +#usr/include/cdada/list_custom_cc.h +#usr/include/cdada/map.h +#usr/include/cdada/map_custom_cc.h +#usr/include/cdada/queue.h +#usr/include/cdada/queue_custom_cc.h +#usr/include/cdada/set.h +#usr/include/cdada/set_custom_cc.h +#usr/include/cdada/stack.h +#usr/include/cdada/stack_custom_cc.h +#usr/include/cdada/str.h +#usr/include/cdada/utils.h +#usr/include/cdada/version.h +#usr/lib/libcdada.a +#usr/lib/libcdada.la +#usr/lib/libcdada.so +usr/lib/libcdada.so.0 +usr/lib/libcdada.so.0.0.0 diff --git a/lfs/libcdada b/lfs/libcdada new file mode 100644 index 000000000..a30b03333 --- /dev/null +++ b/lfs/libcdada @@ -0,0 +1,87 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2019 IPFire Team # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see . # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 0.3.4 + +THISAPP = libcdada-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) +PROG = libcdada +PAK_VER = 1 + +DEPS = + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = f5067835014e02d221af9754df8b140b + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +dist: + @$(PAK) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libcdada-0.3.4-use-shared-library-for-tests-and-examples-build.patch + cd $(DIR_APP) && ./autogen.sh + cd $(DIR_APP)/build && ../configure \ + --prefix=/usr \ + --disable-static + cd $(DIR_APP)/build && make install + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/src/patches/libcdada-0.3.4-use-shared-library-for-tests-and-examples-build.patch b/src/patches/libcdada-0.3.4-use-shared-library-for-tests-and-examples-build.patch new file mode 100644 index 000000000..adb06ad9d --- /dev/null +++ b/src/patches/libcdada-0.3.4-use-shared-library-for-tests-and-examples-build.patch @@ -0,0 +1,56 @@ +diff -ruN libcdada-0.3.4.orig/examples/Makefile.am libcdada-0.3.4/examples/Makefile.am +--- libcdada-0.3.4.orig/examples/Makefile.am 2021-01-15 00:01:59.000000000 +0100 ++++ libcdada-0.3.4/examples/Makefile.am 2021-02-28 15:41:13.940082099 +0100 +@@ -11,32 +11,32 @@ + + list_u32_SOURCES = list_u32.c + list_u32_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-list_u32_LDADD = ../src/.libs/libcdada.a -lstdc++ ++list_u32_LDADD = ../src/.libs/libcdada.so -lstdc++ + + map_struct_SOURCES = map_struct.c + map_struct_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-map_struct_LDADD = ../src/.libs/libcdada.a -lstdc++ ++map_struct_LDADD = ../src/.libs/libcdada.so -lstdc++ + + custom_gen_SOURCES = custom-gen/my_program_gen.c custom-gen/cdada.cc + custom_gen_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-custom_gen_LDADD = ../src/.libs/libcdada.a -lstdc++ ++custom_gen_LDADD = ../src/.libs/libcdada.so -lstdc++ + + custom_macro_SOURCES = custom-macro/my_program.c custom-macro/cdada.cc + custom_macro_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-custom_macro_LDADD = ../src/.libs/libcdada.a -lstdc++ ++custom_macro_LDADD = ../src/.libs/libcdada.so -lstdc++ + + str_SOURCES = str.c + str_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-str_LDADD = ../src/.libs/libcdada.a -lstdc++ ++str_LDADD = ../src/.libs/libcdada.so -lstdc++ + + bbitmap_SOURCES = bbitmap.c + bbitmap_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-bbitmap_LDADD = ../src/.libs/libcdada.a -lstdc++ ++bbitmap_LDADD = ../src/.libs/libcdada.so -lstdc++ + + queue_u32_SOURCES = queue_u32.c + queue_u32_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-queue_u32_LDADD = ../src/.libs/libcdada.a -lstdc++ ++queue_u32_LDADD = ../src/.libs/libcdada.so -lstdc++ + + stack_u32_SOURCES = stack_u32.c + stack_u32_CPPFLAGS = -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-stack_u32_LDADD = ../src/.libs/libcdada.a -lstdc++ ++stack_u32_LDADD = ../src/.libs/libcdada.so -lstdc++ +diff -ruN libcdada-0.3.4.orig/test/Makefile.am libcdada-0.3.4/test/Makefile.am +--- libcdada-0.3.4.orig/test/Makefile.am 2021-01-15 00:01:59.000000000 +0100 ++++ libcdada-0.3.4/test/Makefile.am 2021-02-28 15:40:37.458117227 +0100 +@@ -63,7 +63,7 @@ + benchmark_SOURCES= benchmark.cc + benchmark_CXXFLAGS= -O3 + benchmark_CPPFLAGS= -I$(top_builddir)/include/ -I$(top_srcdir)/include/ +-benchmark_LDADD= -lpthread ../src/.libs/libcdada.a ++benchmark_LDADD= -lpthread ../src/.libs/libcdada.so + + #Valgrind + if VALGRIND_ENABLED