diff options
7 files changed, 149 insertions, 187 deletions
diff --git a/meta-oe/recipes-support/srecord/files/0001-Disable-doxygen.patch b/meta-oe/recipes-support/srecord/files/0001-Disable-doxygen.patch new file mode 100644 index 0000000000..0ed9e87771 --- /dev/null +++ b/meta-oe/recipes-support/srecord/files/0001-Disable-doxygen.patch | |||
@@ -0,0 +1,85 @@ | |||
1 | From d75193671c235e4b3bd02417b40516f3bfeb55b6 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Sun, 30 Apr 2023 14:09:21 -0700 | ||
4 | Subject: [PATCH] Disable doxygen | ||
5 | |||
6 | doxygen (dot) detect does not work in cross environment here with cmake | ||
7 | |||
8 | Upstream-Status: Inappropriate [Cross-compile specific] | ||
9 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
10 | --- | ||
11 | etc/configure.cmake | 2 +- | ||
12 | srecord/CMakeLists.txt | 6 +++--- | ||
13 | 2 files changed, 4 insertions(+), 4 deletions(-) | ||
14 | |||
15 | --- a/etc/configure.cmake | ||
16 | +++ b/etc/configure.cmake | ||
17 | @@ -103,32 +103,3 @@ option(_TANDEM_SOURCE ON) | ||
18 | # Enable general extensions on Solaris. | ||
19 | option(__EXTENSIONS__ ON) | ||
20 | |||
21 | -# Doxygen configuration | ||
22 | -find_package(Doxygen REQUIRED doxygen dot) | ||
23 | - | ||
24 | -set(DOXYGEN_DOT_GRAPH_MAX_NODES 150) | ||
25 | -set(DOXYGEN_ALPHABETICAL_INDEX NO) | ||
26 | -set(DOXYGEN_BUILTIN_STL_SUPPORT YES) | ||
27 | -set(DOXYGEN_CASE_SENSE_NAMES NO) | ||
28 | -set(DOXYGEN_CLASS_DIAGRAMS YES) | ||
29 | -set(DOXYGEN_DISTRIBUTE_GROUP_DOC YES) | ||
30 | -set(DOXYGEN_EXCLUDE bin) | ||
31 | -set(DOXYGEN_EXTRACT_ALL YES) | ||
32 | -set(DOXYGEN_EXTRACT_LOCAL_CLASSES NO) | ||
33 | -set(DOXYGEN_FILE_PATTERNS *.h) | ||
34 | -set(DOXYGEN_GENERATE_TREEVIEW YES) | ||
35 | -set(DOXYGEN_HIDE_FRIEND_COMPOUNDS YES) | ||
36 | -set(DOXYGEN_HIDE_IN_BODY_DOCS YES) | ||
37 | -set(DOXYGEN_HIDE_UNDOC_CLASSES YES) | ||
38 | -set(DOXYGEN_HIDE_UNDOC_MEMBERS YES) | ||
39 | -set(DOXYGEN_JAVADOC_AUTOBRIEF YES) | ||
40 | -set(DOXYGEN_QT_AUTOBRIEF YES) | ||
41 | -set(DOXYGEN_QUIET YES) | ||
42 | -set(DOXYGEN_RECURSIVE YES) | ||
43 | -set(DOXYGEN_REFERENCED_BY_RELATION YES) | ||
44 | -set(DOXYGEN_REFERENCES_RELATION YES) | ||
45 | -set(DOXYGEN_SORT_BY_SCOPE_NAME YES) | ||
46 | -set(DOXYGEN_SORT_MEMBER_DOCS NO) | ||
47 | -set(DOXYGEN_SOURCE_BROWSER YES) | ||
48 | -set(DOXYGEN_STRIP_CODE_COMMENTS NO) | ||
49 | -set(DOXYGEN_GENERATE_HTML YES) | ||
50 | --- a/srecord/CMakeLists.txt | ||
51 | +++ b/srecord/CMakeLists.txt | ||
52 | @@ -34,9 +34,9 @@ install(DIRECTORY ${CMAKE_CURRENT_SOURCE | ||
53 | FILES_MATCHING PATTERN "*.h") | ||
54 | |||
55 | # Install the Doxygen output for the website | ||
56 | -install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html | ||
57 | - DESTINATION ${CMAKE_INSTALL_DOCDIR}/htdocs/srecord | ||
58 | - COMPONENT website) | ||
59 | +#install(DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}/html | ||
60 | +# DESTINATION ${CMAKE_INSTALL_DOCDIR}/htdocs/srecord | ||
61 | +# COMPONENT website) | ||
62 | |||
63 | # Generate config.h to suit local environment | ||
64 | configure_file(config.h.in config.h @ONLY) | ||
65 | @@ -44,6 +44,6 @@ configure_file(patchlevel.h.in patchleve | ||
66 | include_directories(${CMAKE_CURRENT_BINARY_DIR}) | ||
67 | |||
68 | # Generate doxygen content | ||
69 | -doxygen_add_docs(doxygen | ||
70 | - ${LIB_SRECORD_HDR} | ||
71 | - ALL) | ||
72 | +#doxygen_add_docs(doxygen | ||
73 | +# ${LIB_SRECORD_HDR} | ||
74 | +# ALL) | ||
75 | --- a/CMakeLists.txt | ||
76 | +++ b/CMakeLists.txt | ||
77 | @@ -55,7 +55,7 @@ enable_testing() | ||
78 | add_subdirectory(test) | ||
79 | |||
80 | # Documentation & Man Pages | ||
81 | -add_subdirectory(doc) | ||
82 | +# add_subdirectory(doc) | ||
83 | |||
84 | # Package SRecord | ||
85 | include(CPack) | ||
diff --git a/meta-oe/recipes-support/srecord/files/0001-cmake-Do-not-try-to-compute-library-dependencies-dur.patch b/meta-oe/recipes-support/srecord/files/0001-cmake-Do-not-try-to-compute-library-dependencies-dur.patch new file mode 100644 index 0000000000..524dc74611 --- /dev/null +++ b/meta-oe/recipes-support/srecord/files/0001-cmake-Do-not-try-to-compute-library-dependencies-dur.patch | |||
@@ -0,0 +1,45 @@ | |||
1 | From 756169511ed13e4c7adc06c7c108d365ac66b9f8 Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Sun, 30 Apr 2023 22:58:47 -0700 | ||
4 | Subject: [PATCH] cmake: Do not try to compute library dependencies during | ||
5 | install | ||
6 | |||
7 | Since we are cross-building the dependencies are not in final install | ||
8 | location but in a staging area in recipe specific sysroot and it wont be | ||
9 | able to resolve the libraries all the time | ||
10 | |||
11 | Fixes | ||
12 | | CMake Error at srec_cat/cmake_install.cmake:66 (file): | ||
13 | | file Could not resolve runtime dependencies: | ||
14 | | | ||
15 | | libc++.so.1 | ||
16 | | libc.so | ||
17 | | Call Stack (most recent call first): | ||
18 | | cmake_install.cmake:52 (include) | ||
19 | |||
20 | Upstream-Status: Inappropriate [OE-specific] | ||
21 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
22 | --- | ||
23 | etc/packaging.cmake | 6 ------ | ||
24 | 1 file changed, 6 deletions(-) | ||
25 | |||
26 | diff --git a/etc/packaging.cmake b/etc/packaging.cmake | ||
27 | index ee2a32c..9804fd8 100644 | ||
28 | --- a/etc/packaging.cmake | ||
29 | +++ b/etc/packaging.cmake | ||
30 | @@ -45,12 +45,6 @@ FUNCTION(INSTALL_SRECORD_EXECUTABLE_TARGET target) | ||
31 | |||
32 | install(IMPORTED_RUNTIME_ARTIFACTS ${target} | ||
33 | RUNTIME_DEPENDENCY_SET ${PROJECT_NAME}_dlls COMPONENT ${target}) | ||
34 | - install(RUNTIME_DEPENDENCY_SET ${PROJECT_NAME}_dlls | ||
35 | - PRE_EXCLUDE_REGEXES "api-ms-" "ext-ms-" | ||
36 | - POST_EXCLUDE_REGEXES ".*system32/.*\\.dll" | ||
37 | - DIRECTORIES ${DLL_SEARCH_DIRS} | ||
38 | - COMPONENT ${target} | ||
39 | - ) | ||
40 | ENDFUNCTION() | ||
41 | |||
42 | # Packaging | ||
43 | -- | ||
44 | 2.40.1 | ||
45 | |||
diff --git a/meta-oe/recipes-support/srecord/files/0001-configure-Fix-AC_CHECK_LIB-test-for-gpg-error.patch b/meta-oe/recipes-support/srecord/files/0001-configure-Fix-AC_CHECK_LIB-test-for-gpg-error.patch deleted file mode 100644 index 9a411f05d4..0000000000 --- a/meta-oe/recipes-support/srecord/files/0001-configure-Fix-AC_CHECK_LIB-test-for-gpg-error.patch +++ /dev/null | |||
@@ -1,29 +0,0 @@ | |||
1 | From f9e50aba10f9d2c58e5d88f51810ca7143f4372b Mon Sep 17 00:00:00 2001 | ||
2 | From: Khem Raj <raj.khem@gmail.com> | ||
3 | Date: Thu, 1 Sep 2022 13:20:01 -0700 | ||
4 | Subject: [PATCH] configure: Fix AC_CHECK_LIB test for gpg-error | ||
5 | |||
6 | Use check function which is found in libgpg-error | ||
7 | |||
8 | Upstream-Status: Pending | ||
9 | Signed-off-by: Khem Raj <raj.khem@gmail.com> | ||
10 | --- | ||
11 | etc/configure.ac | 2 +- | ||
12 | 1 file changed, 1 insertion(+), 1 deletion(-) | ||
13 | |||
14 | diff --git a/etc/configure.ac b/etc/configure.ac | ||
15 | index d4ae290..ea0936d 100644 | ||
16 | --- a/etc/configure.ac | ||
17 | +++ b/etc/configure.ac | ||
18 | @@ -30,7 +30,7 @@ AC_CHECK_PROGS(SOELIM, gsoelim soelim roffpp) | ||
19 | AC_CHECK_FUNCS(snprintf vsnprintf) | ||
20 | |||
21 | dnl! This is needed for MingGW build, but not for Unix or Linux, etc. | ||
22 | -AC_CHECK_LIB(gpg-error, main) | ||
23 | +AC_CHECK_LIB(gpg-error, gpg_strerror_r) | ||
24 | |||
25 | dnl! @synopsis AC_ADD_CFLAGS | ||
26 | dnl! | ||
27 | -- | ||
28 | 2.37.3 | ||
29 | |||
diff --git a/meta-oe/recipes-support/srecord/files/add-option-to-remove-docs.patch b/meta-oe/recipes-support/srecord/files/add-option-to-remove-docs.patch deleted file mode 100644 index 9b2bd99795..0000000000 --- a/meta-oe/recipes-support/srecord/files/add-option-to-remove-docs.patch +++ /dev/null | |||
@@ -1,57 +0,0 @@ | |||
1 | Add option to build this utility without a documentation. | ||
2 | |||
3 | For full documentation building are necessary utilities like | ||
4 | groff and ps2pdf. Full documentation can takes a lot of space. | ||
5 | So it can be disabled by overloading makefile variable WITHOUT_DOC. | ||
6 | |||
7 | Upstream-Status: Inappropriate [Other] | ||
8 | Workaround specific to our build system. | ||
9 | |||
10 | Signed-off-by: Andrej Valek <andrej.valek@siemens.com> | ||
11 | |||
12 | diff --git a/Makefile.in b/Makefile.in | ||
13 | index 9bdd8f1..a2b5494 100644 | ||
14 | --- a/Makefile.in | ||
15 | +++ b/Makefile.in | ||
16 | @@ -141,6 +141,14 @@ GROFF = @GROFF@ | ||
17 | # | ||
18 | SOELIM = @SOELIM@ | ||
19 | |||
20 | +# Option to build this utility without building and installing the documentation. | ||
21 | +WITHOUT_DOC ?= 0 | ||
22 | +ifeq ($(WITHOUT_DOC),0) | ||
23 | + BUILD_DOC = all-doc | ||
24 | + INST_DOC = install-doc | ||
25 | + CLR_DOC = clean-doc | ||
26 | +endif | ||
27 | + | ||
28 | # --------------------------------------------------------- | ||
29 | # You should not need to change anything below this line. | ||
30 | |||
31 | @@ -4090,7 +4098,7 @@ bin/test_url_decode: $(test_url_decode_obj) .bin srecord/libsrecord.la | ||
32 | $(LIBTOOL) --mode=link --tag=CXX $(CXX) $(CPPFLAGS) $(CXXFLAGS) -o $@ \ | ||
33 | $(test_url_decode_obj) srecord/libsrecord.la $(LDFLAGS) $(LIBS) | ||
34 | |||
35 | -all: all-bin all-doc | ||
36 | +all: all-bin $(BUILD_DOC) | ||
37 | |||
38 | all-bin: bin/srec_cat bin/srec_cmp bin/srec_info bin/test_arglex_ambiguous \ | ||
39 | bin/test_crc16 bin/test_fletcher16 bin/test_gecos \ | ||
40 | @@ -4156,7 +4164,7 @@ test_files = t0001a t0002a t0003a t0004a t0005a t0006a t0007a t0008a t0009a \ | ||
41 | sure: $(test_files) | ||
42 | @echo Passed All Tests | ||
43 | |||
44 | -clean: clean-bin clean-doc clean-misc clean-obj | ||
45 | +clean: clean-bin $(CLR_DOC) clean-misc clean-obj | ||
46 | |||
47 | clean-bin: | ||
48 | rm -f bin/srec_cat bin/srec_cmp bin/srec_info bin/test_arglex_ambiguous | ||
49 | @@ -4443,7 +4451,7 @@ distclean-directories: | ||
50 | rm -rf test/fletcher16/.libs test/gecos/.libs test/hyphen/.libs | ||
51 | rm -rf test/url_decode/.libs | ||
52 | |||
53 | -install: install-bin install-doc install-include install-libdir install-man | ||
54 | +install: install-bin $(INST_DOC) install-include install-libdir install-man | ||
55 | |||
56 | install-bin: $(bindir)/srec_cat $(bindir)/srec_cmp $(bindir)/srec_info | ||
57 | |||
diff --git a/meta-oe/recipes-support/srecord/files/libtool.patch b/meta-oe/recipes-support/srecord/files/libtool.patch deleted file mode 100644 index 95063cea59..0000000000 --- a/meta-oe/recipes-support/srecord/files/libtool.patch +++ /dev/null | |||
@@ -1,67 +0,0 @@ | |||
1 | Instead of just looking for a libtool binary, actually configure libtool. | ||
2 | |||
3 | As the build doesn't use automake we need to manually set top_builddir in the Makefile. | ||
4 | |||
5 | Upstream-Status: Inactive-Upstream [2014] | ||
6 | Signed-off-by: Ross Burton <ross.burton@arm.com> | ||
7 | |||
8 | diff --git a/Makefile.in b/Makefile.in | ||
9 | index a2b5494..aa0b8ca 100644 | ||
10 | --- a/Makefile.in | ||
11 | +++ b/Makefile.in | ||
12 | @@ -36,6 +36,7 @@ | ||
13 | # | ||
14 | srcdir = @srcdir@ | ||
15 | VPATH = @srcdir@ | ||
16 | +top_builddir = @srcdir@ | ||
17 | |||
18 | # | ||
19 | # the name of the install program to use | ||
20 | diff --git a/etc/configure.ac b/etc/configure.ac | ||
21 | index e444543..b137443 100644 | ||
22 | --- a/etc/configure.ac | ||
23 | +++ b/etc/configure.ac | ||
24 | @@ -161,42 +161,7 @@ AS_IF([test "x$with_gcrypt" != xno], AC_GCRYPT_SETUP()) | ||
25 | dnl! | ||
26 | dnl! Now look for libtool. | ||
27 | dnl! | ||
28 | -AC_CHECK_PROGS(LIBTOOL, libtool) | ||
29 | -if test -z "$LIBTOOL" | ||
30 | -then | ||
31 | - AC_MSG_RESULT([ | ||
32 | - You must have GNU Libtool installed to build srecord. | ||
33 | - Homepage: http://www.gnu.org/software/libtool/]) | ||
34 | - OK=no | ||
35 | - if apt-get --version > /dev/null 2> /dev/null; then | ||
36 | - AC_MSG_RESULT([ | ||
37 | - The following command may be used to install it: | ||
38 | - sudo apt-get install libtool | ||
39 | - ]) | ||
40 | - OK=yes | ||
41 | - fi | ||
42 | - if yum --version > /dev/null 2> /dev/null; then | ||
43 | - AC_MSG_RESULT([ | ||
44 | - The following command may be used to install it: | ||
45 | - sudo yum install libtool | ||
46 | - ]) | ||
47 | - OK=yes | ||
48 | - fi | ||
49 | - if pkg_info -a > /dev/null 2> /dev/null; then | ||
50 | - AC_MSG_RESULT([ | ||
51 | - The following command may be used to install it: | ||
52 | - sudo pkg_add -r libtool | ||
53 | - ]) | ||
54 | - OK=yes | ||
55 | - fi | ||
56 | - if test "$OK" != "yes"; then | ||
57 | - AC_MSG_RESULT([ | ||
58 | - If you are using a package based install, you will need the | ||
59 | - libtool package. | ||
60 | - ]) | ||
61 | - fi | ||
62 | - exit 1 | ||
63 | -fi | ||
64 | +LT_INIT | ||
65 | |||
66 | dnl | ||
67 | dnl If the soelim program exists, and understands the -I option, | ||
diff --git a/meta-oe/recipes-support/srecord/srecord_1.64.bb b/meta-oe/recipes-support/srecord/srecord_1.64.bb deleted file mode 100644 index 0629c0f648..0000000000 --- a/meta-oe/recipes-support/srecord/srecord_1.64.bb +++ /dev/null | |||
@@ -1,34 +0,0 @@ | |||
1 | SUMMARY = "A collection of powerful tools for manipulating EPROM load files." | ||
2 | SECTION = "devel" | ||
3 | LICENSE = "GPL-3.0-or-later & LGPL-3.0-or-later" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=8dfcbf2f0a144b97f0931b6394debea7" | ||
5 | |||
6 | SRC_URI = " \ | ||
7 | http://srecord.sourceforge.net/srecord-${PV}.tar.gz \ | ||
8 | file://add-option-to-remove-docs.patch \ | ||
9 | file://libtool.patch \ | ||
10 | file://0001-configure-Fix-AC_CHECK_LIB-test-for-gpg-error.patch \ | ||
11 | " | ||
12 | |||
13 | SRC_URI[md5sum] = "4de4a7497472d7972645c2af91313769" | ||
14 | SRC_URI[sha256sum] = "49a4418733c508c03ad79a29e95acec9a2fbc4c7306131d2a8f5ef32012e67e2" | ||
15 | |||
16 | UPSTREAM_CHECK_URI = "http://sourceforge.net/projects/srecord/files/releases" | ||
17 | |||
18 | DEPENDS = "boost groff-native" | ||
19 | |||
20 | inherit autotools-brokensep | ||
21 | |||
22 | do_configure:prepend() { | ||
23 | # To autoreconf we need the script in ${S}, we can't tell autotools to use | ||
24 | # etc/ because then it can't find the Makefile.in | ||
25 | ln -sf ${S}/etc/configure.ac ${S} | ||
26 | } | ||
27 | |||
28 | PACKAGECONFIG ??= "gcrypt" | ||
29 | PACKAGECONFIG[gcrypt] = "--with-gcrypt,--without-gcrypt,libgcrypt" | ||
30 | |||
31 | # Set variable WITHOUT_DOC=0 to enable documentation generation | ||
32 | EXTRA_OEMAKE = "WITHOUT_DOC=1" | ||
33 | |||
34 | BBCLASSEXTEND = "native" | ||
diff --git a/meta-oe/recipes-support/srecord/srecord_1.65.0.bb b/meta-oe/recipes-support/srecord/srecord_1.65.0.bb new file mode 100644 index 0000000000..06ce48e65c --- /dev/null +++ b/meta-oe/recipes-support/srecord/srecord_1.65.0.bb | |||
@@ -0,0 +1,19 @@ | |||
1 | SUMMARY = "A collection of powerful tools for manipulating EPROM load files." | ||
2 | SECTION = "devel" | ||
3 | LICENSE = "GPL-3.0-or-later & LGPL-3.0-or-later" | ||
4 | LIC_FILES_CHKSUM = "file://LICENSE;md5=d32239bcb673463ab874e80d47fae504" | ||
5 | |||
6 | SRC_URI = " \ | ||
7 | https://sourceforge.net/projects/${BPN}/files/srecord/${@oe.utils.trim_version('${PV}', 2)}/${BP}-Source.tar.gz \ | ||
8 | file://0001-Disable-doxygen.patch \ | ||
9 | file://0001-cmake-Do-not-try-to-compute-library-dependencies-dur.patch" | ||
10 | SRC_URI[sha256sum] = "81c3d07cf15ce50441f43a82cefd0ac32767c535b5291bcc41bd2311d1337644" | ||
11 | S = "${WORKDIR}/${BP}-Source" | ||
12 | |||
13 | UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/srecord/files/releases" | ||
14 | |||
15 | DEPENDS = "boost libgcrypt" | ||
16 | |||
17 | inherit cmake | ||
18 | |||
19 | BBCLASSEXTEND = "native" | ||