openwrt-routing/oonf-olsrd2/Makefile

89 lines
3.4 KiB
Makefile
Raw Normal View History

2015-06-08 10:02:13 +02:00
include $(TOPDIR)/rules.mk
PKG_NAME:=oonf-olsrd2
PKG_RELEASE:=2
2015-06-08 10:02:13 +02:00
PKG_SOURCE_PROTO:=git
oonf-olsrd2: change to git version from 2022-08-25 Compile tested: mips_24kc, arm_cortex-a9_vfpv3-d16, i386_pentium4, x86_64, i386_pentium-mmx, mipsel_24kc Description: c7d404f8 build lan_import bbbd4f3d the package dh-systemd is not longer present in recent Ubuntu versions 1a5fa2a7 add missing extern to global symbol 5ea168ce fix build for gcc-10 (-fno-common default) ced3ace0 Fix schema name for logging in README c6dd02a1 test_config_delta: fix the build on GCC 9 f40be238 include unistd.h in oonf.h to keep modern GCC (e.g. in LEDE) from complaining about ssize_t 95fbcb35 Do avl_for_each_elements_with_key_safe() by hand until we had a closer look at the macro e9b08759 use scaling factor when dealing with fixed integer conversion calls 2f615dab Prevent division by zero through (malformed) RLQ value 8d424b24 Fix NHDP link status for interfaces without MAC addresses eecc3333 Add missing telnet dependency to layer2-config 965c2f73 Allow "non-unicast" routes to be imported 243e17e3 Allow setting l2config via telnet 40f24ab9 Partly working telnet code for l2config c33d680e Add LID capability to oonf_layer2 and l2config subsystem bad48ebc Do not accept configuration with unknown sections/values if 'global.failfast' is true. Set 'global.failfast' to true by default 05682c0c Make VIF sockets non-blocking 63345654 Reorder libraries for testcase creation to prevent Ubuntu 16.04 Bug (MOTOR-50) 3c1984f8 Fix compilation issue with "no-debug" logging 3765eb01 Cleanup ffdat metric to be able to import rx_throughput. bdee26ba Improve combination of DAT speed and L2 throughput values a1c3ea66 Allow ffdat metric to consider rx_throughput field c8ec8301 Fix token validation ad72038e Improve DAT-Metric by shifting hysteresis to the loss side and consider other layer2 parameters 9addfba4 Fix fixed integer arithmetics handling f9ccd26b Track scaling factors of layer2 data elements. Handle different scaling for DLEP conversion. 603e48e8 Fix router_id for Netjson domain output 234e9109 Improve hello interval overwriting 7fc0f50b Add SNR to layer2 neighbor data f9ebcf8e Fix bad 'is in list' test in stream socket processing 29a2a385 Set path prefix length in CMakeListsGlobal a2ea9186 Replace VIF name pointer with array e8f04530 Simplify test case creation 271ff097 Move 'enable test' to CMakeListsGlobal.cmake 0482db42 Fix no-debug/no-info compilation 38edcced Add more doxygen comments for layer2 import 1a709b5c Add missing comment for subsystem shutdown initiation, remove empty files c7a68650 Fix the handling of neighbor IPs in dlep radio. c255ead5 Add avl_for_each_elements_with_key_safe() macro and do some basic tests 5f835533 Don't filter for protocol for routes being removed (linux does not report protocol in this case) 83b19c54 Allow imported routed to be combined by l2import into the same l2 network. Allow multiple IP addresses being reported by DLEP 5274ce6a Fix tarball generator 6dd188ed Use relative path for calling archive builder 988aac6e Move included cmake files into CMakeListsGlobal to allow inclusion in wrapper projects 2a072733 Cleanup build installation directories fc1fbbed Move test include to include directory 4043202f Rename "subsystems" directory to "base" 2e3578ba Add "config query" command to remotecontrol plugin to query a configuration value including default 48c2cdcb Prevent theoretical buffer overlow to make Coverity more happy (Coverity #181104) 19583704 Fix possible Null reference in colored logging (Coverity #188445) 6fa04505 Fix GCC 8 warning about small buffer 356d3b9b Allow wrapped build directory around OONF directory 11be4696 Cleanup and simplify OONF directory strucure f1a30ade Restructure import of FIB entries to go through the layer2 db allow export of layer2 IP entries to FIB allow transmission of layer2 IP entries over DLEP 32bf829c Remove debugging code accidently left in for LID preparation f6b884b1 Hotfix for closing UDP socket behavior mentioned in Github Issue 14 e7e5b685 Add missing build target for test creation 88efd166 Cleanup build system for tests and add generic 'build_tests' target. 2e5803bd Add more linklayer data options and a better query function 2dac53d9 Restructure ffdat plugin as preparation for external metric calculation Fix compiler warning in routing code 8cb39863 Remove static modifier from olsrv2/nhdp logging sources. Otherwise they cannot be used by the other source files of the plugins. 3a2dd24e Fix return values of DLEP signal processing callbacks b2e18c91 Fix handling of lid-length TLV in DLEP session ACK 2b7b3ef8 Add doxygen comments for link-id code bc24cba0 Implement lid_length mechanism into DLEP b12ef6ea Add basic link-id capability to DLEP 8cc2d03e Add a few example configurations to the repository 1e3fb288 Add support for Link-ID to layer2 database 28adaf5a Remove (done) TODO mark for outgoing TCP connection error handling 2bfbcff3 Improve error handling for failed outgoing TCP connections 1d1e8876 Add better debugging output to packet socket code 3b89103e Fix issues with DLEP udp_mode none and reconnect d4d64875 Add function to calculate IPv6 address from MAC bdc2c2e6 Fixes for doxygen comments 5e2a7b48 Fix variable used in layer2 generator loop a38b6847 Fix DLEP handling of mandatory TLVs d242e098 Add yet more Markdown formatting to BUILDING.md 074dd7c3 Add more Markdown formatting to BUILDING.md 51d78c27 Rename BUILDING to BUILDING.md Signed-off-by: Patrick Grimm <patrick@lunatiki.de>
2023-02-21 02:19:58 +01:00
PKG_SOURCE_URL:=https://github.com/OLSR/OONF.git
PKG_SOURCE_DATE:=2022-08-25
PKG_SOURCE_VERSION:=1cec9b21086fb52ab4262c69aabd087e4d2d3a44
PKG_MIRROR_HASH:=3350037ecb4d2e08f54a3fb8afe4f2d4e4884e1dec42ffdba1a6c5233df1b6cf
2015-06-08 10:02:13 +02:00
CMAKE_INSTALL:=1
include $(INCLUDE_DIR)/package.mk
include $(INCLUDE_DIR)/cmake.mk
# ref https://stackoverflow.com/a/10571900/3990041
SPACE:= $(subst ,, )
2016-05-05 14:59:52 +02:00
CMAKE_OPTIONAL_PLUGINS:= $(subst $(SPACE),;,$(strip \
$(if $(filter y,$(CONFIG_OONF_NHDP_AUTOLL4)),auto_ll4,) \
$(if $(filter y,$(CONFIG_OONF_OLSRV2_LAN_IMPORT)),lan_import,) \
$(if $(filter y,$(CONFIG_OONF_OLSRV2_ROUTE_MODIFIER)),route_modifier,) \
$(if $(filter y,$(CONFIG_OONF_GENERIC_DLEP_ROUTER)),dlep,) \
$(if $(filter y,$(CONFIG_OONF_GENERIC_REMOTECONTROL)),remotecontrol,) \
2017-06-06 16:47:27 +02:00
$(if $(filter y,$(CONFIG_OONF_OLSRV2_MPR)),mpr,) \
2017-06-08 12:40:44 +02:00
$(if $(filter y,$(CONFIG_OONF_GENERIC_HTTP)),http,) \
$(if $(filter y,$(CONFIG_OONF_OLSRV2_LAN)),olsrv2_lan,) \
$(if $(filter y,$(CONFIG_OONF_OLSRV2_OLD_LAN)),olsrv2_old_lan,) \
2016-05-05 14:59:52 +02:00
))
BUILD_TYPE:= $(if $(filter y,$(CONFIG_DEBUG)),Debug,Release)
CMAKE_OPTIONS+=-D CMAKE_BUILD_TYPE:String=$(BUILD_TYPE) \
-D OONF_NO_WERROR:Bool=true \
-D OONF_LOGGING_LEVEL:String=debug \
-D OONF_NO_TESTING:Bool=true \
-D UCI:Bool=true \
-D OONF_APP_DEFAULT_CFG_HANDLER:String=uci \
-D OONF_STATIC_PLUGINS:String="class;callback;clock;duplicate_set;layer2;packet_socket;rfc5444;socket;stream_socket;telnet;timer;viewer;os_clock;os_fd;os_interface;os_routing;os_system;nhdp;olsrv2;ff_dat_metric;neighbor_probing;nl80211_listener;link_config;layer2info;systeminfo;cfg_uciloader;cfg_compact;nhdpinfo;olsrv2info;netjsoninfo;${CMAKE_OPTIONAL_PLUGINS}" \
oonf-olsrd2: change to git version from 2022-08-25 Compile tested: mips_24kc, arm_cortex-a9_vfpv3-d16, i386_pentium4, x86_64, i386_pentium-mmx, mipsel_24kc Description: c7d404f8 build lan_import bbbd4f3d the package dh-systemd is not longer present in recent Ubuntu versions 1a5fa2a7 add missing extern to global symbol 5ea168ce fix build for gcc-10 (-fno-common default) ced3ace0 Fix schema name for logging in README c6dd02a1 test_config_delta: fix the build on GCC 9 f40be238 include unistd.h in oonf.h to keep modern GCC (e.g. in LEDE) from complaining about ssize_t 95fbcb35 Do avl_for_each_elements_with_key_safe() by hand until we had a closer look at the macro e9b08759 use scaling factor when dealing with fixed integer conversion calls 2f615dab Prevent division by zero through (malformed) RLQ value 8d424b24 Fix NHDP link status for interfaces without MAC addresses eecc3333 Add missing telnet dependency to layer2-config 965c2f73 Allow "non-unicast" routes to be imported 243e17e3 Allow setting l2config via telnet 40f24ab9 Partly working telnet code for l2config c33d680e Add LID capability to oonf_layer2 and l2config subsystem bad48ebc Do not accept configuration with unknown sections/values if 'global.failfast' is true. Set 'global.failfast' to true by default 05682c0c Make VIF sockets non-blocking 63345654 Reorder libraries for testcase creation to prevent Ubuntu 16.04 Bug (MOTOR-50) 3c1984f8 Fix compilation issue with "no-debug" logging 3765eb01 Cleanup ffdat metric to be able to import rx_throughput. bdee26ba Improve combination of DAT speed and L2 throughput values a1c3ea66 Allow ffdat metric to consider rx_throughput field c8ec8301 Fix token validation ad72038e Improve DAT-Metric by shifting hysteresis to the loss side and consider other layer2 parameters 9addfba4 Fix fixed integer arithmetics handling f9ccd26b Track scaling factors of layer2 data elements. Handle different scaling for DLEP conversion. 603e48e8 Fix router_id for Netjson domain output 234e9109 Improve hello interval overwriting 7fc0f50b Add SNR to layer2 neighbor data f9ebcf8e Fix bad 'is in list' test in stream socket processing 29a2a385 Set path prefix length in CMakeListsGlobal a2ea9186 Replace VIF name pointer with array e8f04530 Simplify test case creation 271ff097 Move 'enable test' to CMakeListsGlobal.cmake 0482db42 Fix no-debug/no-info compilation 38edcced Add more doxygen comments for layer2 import 1a709b5c Add missing comment for subsystem shutdown initiation, remove empty files c7a68650 Fix the handling of neighbor IPs in dlep radio. c255ead5 Add avl_for_each_elements_with_key_safe() macro and do some basic tests 5f835533 Don't filter for protocol for routes being removed (linux does not report protocol in this case) 83b19c54 Allow imported routed to be combined by l2import into the same l2 network. Allow multiple IP addresses being reported by DLEP 5274ce6a Fix tarball generator 6dd188ed Use relative path for calling archive builder 988aac6e Move included cmake files into CMakeListsGlobal to allow inclusion in wrapper projects 2a072733 Cleanup build installation directories fc1fbbed Move test include to include directory 4043202f Rename "subsystems" directory to "base" 2e3578ba Add "config query" command to remotecontrol plugin to query a configuration value including default 48c2cdcb Prevent theoretical buffer overlow to make Coverity more happy (Coverity #181104) 19583704 Fix possible Null reference in colored logging (Coverity #188445) 6fa04505 Fix GCC 8 warning about small buffer 356d3b9b Allow wrapped build directory around OONF directory 11be4696 Cleanup and simplify OONF directory strucure f1a30ade Restructure import of FIB entries to go through the layer2 db allow export of layer2 IP entries to FIB allow transmission of layer2 IP entries over DLEP 32bf829c Remove debugging code accidently left in for LID preparation f6b884b1 Hotfix for closing UDP socket behavior mentioned in Github Issue 14 e7e5b685 Add missing build target for test creation 88efd166 Cleanup build system for tests and add generic 'build_tests' target. 2e5803bd Add more linklayer data options and a better query function 2dac53d9 Restructure ffdat plugin as preparation for external metric calculation Fix compiler warning in routing code 8cb39863 Remove static modifier from olsrv2/nhdp logging sources. Otherwise they cannot be used by the other source files of the plugins. 3a2dd24e Fix return values of DLEP signal processing callbacks b2e18c91 Fix handling of lid-length TLV in DLEP session ACK 2b7b3ef8 Add doxygen comments for link-id code bc24cba0 Implement lid_length mechanism into DLEP b12ef6ea Add basic link-id capability to DLEP 8cc2d03e Add a few example configurations to the repository 1e3fb288 Add support for Link-ID to layer2 database 28adaf5a Remove (done) TODO mark for outgoing TCP connection error handling 2bfbcff3 Improve error handling for failed outgoing TCP connections 1d1e8876 Add better debugging output to packet socket code 3b89103e Fix issues with DLEP udp_mode none and reconnect d4d64875 Add function to calculate IPv6 address from MAC bdc2c2e6 Fixes for doxygen comments 5e2a7b48 Fix variable used in layer2 generator loop a38b6847 Fix DLEP handling of mandatory TLVs d242e098 Add yet more Markdown formatting to BUILDING.md 074dd7c3 Add more Markdown formatting to BUILDING.md 51d78c27 Rename BUILDING to BUILDING.md Signed-off-by: Patrick Grimm <patrick@lunatiki.de>
2023-02-21 02:19:58 +01:00
-D OONF_LIB_GIT:String=$(PKG_SOURCE_VERSION) \
-D VERSION_SUB_TAG:String=$(PKG_SOURCE_DATE) \
-D INSTALL_LIB_DIR:Path=lib/oonf \
-D INSTALL_INCLUDE_DIR:Path=include/oonf \
-D INSTALL_CMAKE_DIR:Path=lib/oonf \
-D CMAKE_PREFIX_PATH=$(STAGING_DIR)/usr \
-D CMAKE_GENERATOR=Ninja
2015-06-08 10:02:13 +02:00
define Package/oonf-git/template
SECTION:=net
CATEGORY:=Network
MAINTAINER:=Henning Rogge <hrogge@gmail.com>
SUBMENU:=OLSR.org network framework
URL:=http://www.olsr.org/
2016-05-05 14:59:52 +02:00
MENU:=1
2015-06-08 10:02:13 +02:00
endef
define Package/oonf-olsrd2
2016-04-19 12:29:36 +02:00
$(call Package/oonf-git/template)
2015-06-08 10:02:13 +02:00
TITLE:= Build Olsrd V2 Routing Agent
DEPENDS:=+librt +libnl-tiny +libuci +oonf-init-scripts
2015-06-08 10:02:13 +02:00
VERSION:=$(PKG_VERSION)
endef
2016-05-05 14:59:52 +02:00
define Package/oonf-olsrd2/config
source "$(SOURCE)/Config.in"
endef
2015-06-08 10:02:13 +02:00
Build/Compile=$(call Build/Compile/Default,olsrd2_static)
Build/Install=
define Build/Install
$(INSTALL_BIN) -D $(PKG_BUILD_DIR)/$(MAKE_PATH)/olsrd2_static $(PKG_INSTALL_DIR)/usr/sbin/olsrd2;
endef
TARGET_CFLAGS += -I$(STAGING_DIR)/usr/include -I${STAGING_DIR}/usr/include/libnl-tiny
define Package/oonf-olsrd2/install
$(INSTALL_BIN) -D $(PKG_BUILD_DIR)/olsrd2_static $(1)/usr/sbin/olsrd2
$(INSTALL_BIN) -D ./files/olsrd2.init $(1)/etc/init.d/olsrd2
$(INSTALL_BIN) -D ./files/olsrd2.hotplug $(1)/etc/hotplug.d/iface/50-olsrd2
$(INSTALL_DATA) -D ./files/olsrd2.uci $(1)/etc/config/olsrd2
endef
define Package/oonf-olsrd2/conffiles
/etc/config/olsrd2
endef
$(eval $(call BuildPackage,oonf-olsrd2))