From f8d9ec57f0f33d8f28e35c86a9d6890c853104a7 Mon Sep 17 00:00:00 2001 From: Willy Tarreau Date: Fri, 2 Apr 2021 16:19:39 +0200 Subject: [PATCH] CONTRIB: move src/da.c and contrib/deviceatlas to addons/deviceatlas Both the source file and the dummy library are now at the same place. Maybe the build howto could be moved there as well to make things even cleaner. The Makefile, MAINTAINERS, doc, github build matrix, coverity checks and travis CI's build were updated. --- .github/matrix.py | 4 ++-- .github/workflows/coverity.yml | 2 +- .travis.yml | 2 +- MAINTAINERS | 2 +- Makefile | 3 ++- {src => addons/deviceatlas}/da.c | 0 {contrib/deviceatlas => addons/deviceatlas/dummy}/Makefile | 2 +- {contrib/deviceatlas => addons/deviceatlas/dummy}/dac.c | 0 {contrib/deviceatlas => addons/deviceatlas/dummy}/dac.h | 0 {contrib/deviceatlas => addons/deviceatlas/dummy}/json.c | 0 doc/DeviceAtlas-device-detection.txt | 6 +++--- 11 files changed, 11 insertions(+), 10 deletions(-) rename {src => addons/deviceatlas}/da.c (100%) rename {contrib/deviceatlas => addons/deviceatlas/dummy}/Makefile (66%) rename {contrib/deviceatlas => addons/deviceatlas/dummy}/dac.c (100%) rename {contrib/deviceatlas => addons/deviceatlas/dummy}/dac.h (100%) rename {contrib/deviceatlas => addons/deviceatlas/dummy}/json.c (100%) diff --git a/.github/matrix.py b/.github/matrix.py index 9f4e1f635..4db876710 100644 --- a/.github/matrix.py +++ b/.github/matrix.py @@ -80,7 +80,7 @@ for CC in ["gcc", "clang"]: "WURFL_INC=contrib/wurfl", "WURFL_LIB=contrib/wurfl", "USE_DEVICEATLAS=1", - "DEVICEATLAS_SRC=contrib/deviceatlas", + "DEVICEATLAS_SRC=addons/deviceatlas/dummy", "USE_PROMEX=1", "USE_51DEGREES=1", "51DEGREES_SRC=addons/51degrees/dummy/pattern", @@ -146,7 +146,7 @@ matrix.append( "WURFL_INC=contrib/wurfl", "WURFL_LIB=contrib/wurfl", "USE_DEVICEATLAS=1", - "DEVICEATLAS_SRC=contrib/deviceatlas", + "DEVICEATLAS_SRC=addons/deviceatlas/dummy", "USE_PROMEX=1", "USE_51DEGREES=1", "51DEGREES_SRC=addons/51degrees/dummy/pattern", diff --git a/.github/workflows/coverity.yml b/.github/workflows/coverity.yml index 7537ba3e4..12d08e6ce 100644 --- a/.github/workflows/coverity.yml +++ b/.github/workflows/coverity.yml @@ -17,7 +17,7 @@ jobs: COVERITY_SCAN_PROJECT_NAME: 'Haproxy' COVERITY_SCAN_BRANCH_PATTERN: '*' COVERITY_SCAN_NOTIFICATION_EMAIL: 'chipitsine@gmail.com' - COVERITY_SCAN_BUILD_COMMAND: "make CC=clang TARGET=linux-glibc USE_ZLIB=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_LUA=1 USE_OPENSSL=1 USE_SYSTEMD=1 USE_WURFL=1 WURFL_INC=contrib/wurfl WURFL_LIB=contrib/wurfl USE_DEVICEATLAS=1 DEVICEATLAS_SRC=contrib/deviceatlas USE_51DEGREES=1 51DEGREES_SRC=addons/51degrees/dummy/pattern" + COVERITY_SCAN_BUILD_COMMAND: "make CC=clang TARGET=linux-glibc USE_ZLIB=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_LUA=1 USE_OPENSSL=1 USE_SYSTEMD=1 USE_WURFL=1 WURFL_INC=contrib/wurfl WURFL_LIB=contrib/wurfl USE_DEVICEATLAS=1 DEVICEATLAS_SRC=addons/deviceatlas/dummy USE_51DEGREES=1 51DEGREES_SRC=addons/51degrees/dummy/pattern" steps: - uses: actions/checkout@v2 - name: Install apt dependencies diff --git a/.travis.yml b/.travis.yml index 3d2f280bb..645f7e644 100644 --- a/.travis.yml +++ b/.travis.yml @@ -11,7 +11,7 @@ branches: env: global: - - FLAGS="USE_ZLIB=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_LUA=1 USE_OPENSSL=1 USE_SYSTEMD=1 USE_WURFL=1 WURFL_INC=contrib/wurfl WURFL_LIB=contrib/wurfl USE_DEVICEATLAS=1 DEVICEATLAS_SRC=contrib/deviceatlas USE_51DEGREES=1" + - FLAGS="USE_ZLIB=1 USE_PCRE=1 USE_PCRE_JIT=1 USE_LUA=1 USE_OPENSSL=1 USE_SYSTEMD=1 USE_WURFL=1 WURFL_INC=contrib/wurfl WURFL_LIB=contrib/wurfl USE_DEVICEATLAS=1 DEVICEATLAS_SRC=addons/deviceatlas/dummy USE_51DEGREES=1" - TMPDIR=/tmp - FIFTYONEDEGREES_SRC="addons/51degrees/dummy/pattern" - DEBUG_OPTIONS="DEBUG_STRICT=1" diff --git a/MAINTAINERS b/MAINTAINERS index 144cc4253..ff09b0881 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -28,7 +28,7 @@ Files: src/cache.c, include/haproxy/cache*.h DeviceAtlas device identification Maintainer: David Carlier -Files: src/da.c, contrib/deviceatlas, doc/DeviceAtlas-device-detection.txt +Files: addons/deviceatlas, doc/DeviceAtlas-device-detection.txt DNS and Resolvers Maintainer: Emeric Brun diff --git a/Makefile b/Makefile index a9e8b492a..b0cfe23c8 100644 --- a/Makefile +++ b/Makefile @@ -640,7 +640,7 @@ endif OPTIONS_OBJS += $(DEVICEATLAS_LIB)/json.o OPTIONS_OBJS += $(DEVICEATLAS_LIB)/dac.o endif -OPTIONS_OBJS += src/da.o +OPTIONS_OBJS += addons/deviceatlas/da.o OPTIONS_CFLAGS += $(if $(DEVICEATLAS_INC),-I$(DEVICEATLAS_INC)) endif @@ -1005,6 +1005,7 @@ clean: $(Q)rm -f {admin,dev,contrib}/*/*.[oas] {admin,dev,contrib}/*/*/*.[oas] {admin,dev,contrib}/*/*/*/*.[oas] $(Q)rm -f addons/promex/*.[oas] $(Q)rm -f addons/51degrees/*.[oas] addons/51degrees/dummy/*.[oas] addons/51degrees/dummy/*/*.[oas] + $(Q)rm -f addons/deviceatlas/*.[oas] addons/deviceatlas/dummy/*.[oas] $(Q)rm -f admin/iprange/iprange admin/iprange/ip6range admin/halog/halog $(Q)rm -f dev/flags/flags dev/poll/poll dev/tcploop/tcploop $(Q)rm -f dev/hpack/decode dev/hpack/gen-enc dev/hpack/gen-rht diff --git a/src/da.c b/addons/deviceatlas/da.c similarity index 100% rename from src/da.c rename to addons/deviceatlas/da.c diff --git a/contrib/deviceatlas/Makefile b/addons/deviceatlas/dummy/Makefile similarity index 66% rename from contrib/deviceatlas/Makefile rename to addons/deviceatlas/dummy/Makefile index 8214b9b97..8bba8401c 100644 --- a/contrib/deviceatlas/Makefile +++ b/addons/deviceatlas/dummy/Makefile @@ -1,7 +1,7 @@ # makefile for dummy DeviceAtlas library # # To enable the DeviceAtlas module support, the following are needed -# make TARGET= DEVICEATLAS_SRC=./contrib/deviceatlas USE_PCRE=1 USE_DEVICEATLAS=1 +# make TARGET= DEVICEATLAS_SRC=addons/deviceatlas/dummy USE_PCRE=1 USE_DEVICEATLAS=1 build: libda.a diff --git a/contrib/deviceatlas/dac.c b/addons/deviceatlas/dummy/dac.c similarity index 100% rename from contrib/deviceatlas/dac.c rename to addons/deviceatlas/dummy/dac.c diff --git a/contrib/deviceatlas/dac.h b/addons/deviceatlas/dummy/dac.h similarity index 100% rename from contrib/deviceatlas/dac.h rename to addons/deviceatlas/dummy/dac.h diff --git a/contrib/deviceatlas/json.c b/addons/deviceatlas/dummy/json.c similarity index 100% rename from contrib/deviceatlas/json.c rename to addons/deviceatlas/dummy/json.c diff --git a/doc/DeviceAtlas-device-detection.txt b/doc/DeviceAtlas-device-detection.txt index bb4e3699b..9a1c9b594 100644 --- a/doc/DeviceAtlas-device-detection.txt +++ b/doc/DeviceAtlas-device-detection.txt @@ -13,12 +13,12 @@ directory. For HAProxy developers who need to verify that their changes didn't accidentally break the DeviceAtlas code, it is possible to build a dummy library provided in -the contrib/deviceatlas directory and to use it as an alternative for the full -library. This will not provide the full functionalities, it will just allow +the addons/deviceatlas/dummy directory and to use it as an alternative for the +full library. This will not provide the full functionalities, it will just allow haproxy to start with a deviceatlas configuration, which generally is enough to validate API changes : - $ make TARGET= USE_PCRE=1 USE_DEVICEATLAS=1 DEVICEATLAS_SRC=$PWD/contrib/deviceatlas + $ make TARGET= USE_PCRE=1 USE_DEVICEATLAS=1 DEVICEATLAS_SRC=$PWD/addons/deviceatlas/dummy These are supported DeviceAtlas directives (see doc/configuration.txt) : - deviceatlas-json-file .