From: "Adolf Belka (ipfire)" <adolf.belka@ipfire.org>
To: development@lists.ipfire.org
Subject: [PATCH 2/2] libcdada: New addon - dependency for pmacct
Date: Mon, 08 Mar 2021 13:00:25 +0100 [thread overview]
Message-ID: <20210308120025.2100-1-adolf.belka@ipfire.org> (raw)
[-- Attachment #1: Type: text/plain, Size: 8696 bytes --]
From: Adolf Belka <adolf.belka(a)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(a)ipfire.org>
Signed-off-by: Adolf Belka <adolf.belka(a)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(a)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
--
2.30.1
next reply other threads:[~2021-03-08 12:00 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-03-08 12:00 Adolf Belka (ipfire) [this message]
2021-03-18 12:58 ` Michael Tremer
2021-03-18 13:12 ` Adolf Belka
2021-03-18 18:20 ` Michael Tremer
2021-03-19 12:27 ` Adolf Belka
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210308120025.2100-1-adolf.belka@ipfire.org \
--to=adolf.belka@ipfire.org \
--cc=development@lists.ipfire.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox