aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÄlven <alster@vinterdalen.se>2025-01-08 11:55:24 +0000
committerRobert Clausecker <fuz@FreeBSD.org>2025-01-17 12:34:00 +0000
commit97d9bb985218fbacf81ad48e08a811839ba7c50f (patch)
tree113fec899f01ee3e91712d1c23fc121f4eafa90f
parentd01782846b8e7f4e3b601e34ba1481d7f32aee9c (diff)
www/lexbor: improve port
+ Add option for building EXAMPLES * Always build shared library, remove SHARED option * Use dynamic SOVERSION via PLIST_SUB PR: 283924 MFH: 2025Q1
-rw-r--r--www/lexbor/Makefile14
-rw-r--r--www/lexbor/pkg-plist72
2 files changed, 79 insertions, 7 deletions
diff --git a/www/lexbor/Makefile b/www/lexbor/Makefile
index 4a01b07cb821..24537aba95eb 100644
--- a/www/lexbor/Makefile
+++ b/www/lexbor/Makefile
@@ -1,6 +1,7 @@
PORTNAME= lexbor
DISTVERSIONPREFIX= v
DISTVERSION= 2.4.0
+PORTREVISION= 1
CATEGORIES= www
MAINTAINER= alster@vinterdalen.se
@@ -15,19 +16,24 @@ USES= cmake:testing
USE_GITHUB= yes
USE_LDCONFIG= yes
+PLIST_SUB= SOVERSION=${DISTVERSION}
+
CMAKE_TESTING_ON= LEXBOR_BUILD_TESTS
-OPTIONS_DEFINE= ASAN HEADERS SHARED STATIC
-OPTIONS_DEFAULT= HEADERS SHARED STATIC
+OPTIONS_DEFINE= ASAN EXAMPLES HEADERS STATIC
+OPTIONS_DEFAULT= HEADERS STATIC
OPTIONS_SUB= yes
ASAN_DESC= Enable Address Sanitizer if possible
HEADERS_DESC= Install library headers (.h files)
-SHARED_DESC= Create a shared library
ASAN_CMAKE_BOOL= LEXBOR_BUILD_WITH_ASAN
+EXAMPLES_CMAKE_BOOL= LEXBOR_BUILD_EXAMPLES
HEADERS_CMAKE_BOOL= LEXBOR_INSTALL_HEADERS
-SHARED_CMAKE_BOOL= LEXBOR_BUILD_SHARED
STATIC_CMAKE_BOOL= LEXBOR_BUILD_STATIC
+post-install-EXAMPLES-on:
+ ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}
+ (cd ${WRKSRC}/examples && ${COPYTREE_SHARE} . ${STAGEDIR}${EXAMPLESDIR})
+
.include <bsd.port.mk>
diff --git a/www/lexbor/pkg-plist b/www/lexbor/pkg-plist
index cc079486c1b1..90c372398edb 100644
--- a/www/lexbor/pkg-plist
+++ b/www/lexbor/pkg-plist
@@ -263,8 +263,74 @@
%%HEADERS%%include/lexbor/utils/http.h
%%HEADERS%%include/lexbor/utils/utils.h
%%HEADERS%%include/lexbor/utils/warc.h
-%%SHARED%%lib/liblexbor.so
-%%SHARED%%lib/liblexbor.so.2
-%%SHARED%%lib/liblexbor.so.2.4.0
+lib/liblexbor.so
+lib/liblexbor.so.2
+lib/liblexbor.so.%%SOVERSION%%
%%STATIC%%lib/liblexbor_static.a
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/StyleSheet.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/base.h
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/selectors/list_easy_way.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/selectors/list_fast_way.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/syntax/simple_colorize.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/syntax/structure_parse_file.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/syntax/tokenizer/chunks_stdin.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/syntax/tokenizer/from_file.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/css/syntax/tokenizer/print_raw.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/buffer/decode/decode.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/buffer/decode/decoder.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/buffer/decode/validate.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/buffer/encode/encode.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/buffer/encode/encoder.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/buffer/encode/validate.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/buffer/from_to.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/data_by_name.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/single/decode/decode.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/single/decode/decoder.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/single/decode/validate.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/single/encode/encode.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/single/encode/encoder.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/single/encode/validate.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/encoding/single/from_to.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/base.h
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/document_parse.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/document_parse_chunk.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/document_title.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/element_attributes.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/element_create.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/element_innerHTML.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/elements_by_attr.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/elements_by_class_name.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/elements_by_tag_name.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/encoding.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/html2sexpr.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/parse.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/parse_chunk.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/tokenizer/callback.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/tokenizer/simple.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/tokenizer/tag_attributes.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/html/tokenizer/text.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/punycode/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/punycode/decode.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/punycode/encode.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/selectors/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/selectors/easy_way.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/selectors/normal_way.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/selectors/unique_nodes.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/styles/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/styles/attribute_style.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/styles/base.h
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/styles/events_insert.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/styles/stylesheet.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/styles/walk.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/unicode/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/unicode/idna_to_ascii.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/unicode/normalization_form.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/unicode/normalization_form_stdin.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/url/CMakeLists.txt
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/url/parse.c
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/lexbor/url/relative.c
%%HEADERS%%@dir include/lexbor/html/tree/insertion_mode