From: Adolf Belka adolf.belka@ipfire.org
- 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 ummeegge@ipfire.org
Signed-off-by: Adolf Belka adolf.belka@ipfire.org --- 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 info@ipfire.org # +# # +# 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 http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# 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