Message ID | 20240225230903.22005-2-wilfred.mallawa@wdc.com |
---|---|
State | Superseded |
Headers | show |
Series | [v2,1/1] package/libspdm: bump version to 3.2.0 | expand |
ping :) On Mon, 2024-02-26 at 09:09 +1000, Wilfred Mallawa wrote: > Additionally, add an upstream patch that fixes the configuration for > "NONE" toolchain variant in libspdm. That is, where the build > environment provides compile/link options. > > Reviewed-by: Alistair Francis <alistair.francis@wdc.com> > Signed-off-by: Wilfred Mallawa <wilfred.mallawa@wdc.com> > --- > Changes in V2: > - Added missing "Upstream" URL to libspdm patch > --- > ...eLists-remove-fixed-options-for-NONE.patch | 52 > +++++++++++++++++++ > package/libspdm/libspdm.hash | 2 +- > package/libspdm/libspdm.mk | 2 +- > 3 files changed, 54 insertions(+), 2 deletions(-) > create mode 100644 package/libspdm/0001-CMakeLists-remove-fixed- > options-for-NONE.patch > > diff --git a/package/libspdm/0001-CMakeLists-remove-fixed-options- > for-NONE.patch b/package/libspdm/0001-CMakeLists-remove-fixed- > options-for-NONE.patch > new file mode 100644 > index 0000000000..0de0ad0079 > --- /dev/null > +++ b/package/libspdm/0001-CMakeLists-remove-fixed-options-for- > NONE.patch > @@ -0,0 +1,52 @@ > +From d4d6b138d727e484fa9d0fef476ca181681d0695 Mon Sep 17 00:00:00 > 2001 > +From: Wilfred Mallawa <wilfred.mallawa@wdc.com> > +Date: Mon, 19 Feb 2024 09:56:14 +1000 > +Subject: [PATCH] CMakeLists: remove fixed options for NONE > + > +The use of the NONE toolchain option is such that we can provide at > the > +build project level (buildroot etc...). However, the changes > introduced > +in 811f2b596def04b3a36368cf2098546d7907767f set certain > compiler/linker > +option that does not comply with the definition of the options as > +specified in [1]. This change removes those options. > + > +[1] > https://github.com/DMTF/libspdm/blob/main/doc/build.md#linux-builds-inside-build-environments > + > +Upstream: > https://github.com/DMTF/libspdm/commit/d4d6b138d727e484fa9d0fef476ca181681d0695 > +Signed-off-by: Wilfred Mallawa <wilfred.mallawa@wdc.com> > +--- > + CMakeLists.txt | 19 ------------------- > + 1 file changed, 19 deletions(-) > + > +diff --git a/CMakeLists.txt b/CMakeLists.txt > +index 9c300cc817..f6cf17d269 100644 > +--- a/CMakeLists.txt > ++++ b/CMakeLists.txt > +@@ -618,25 +618,6 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux") > + SET(CMAKE_EXE_LINKER_FLAGS "") > + > + SET(CMAKE_C_LINK_EXECUTABLE "") > +- > +- elseif(TOOLCHAIN STREQUAL "NONE") > +- ADD_COMPILE_OPTIONS(-fshort-wchar -fno-strict-aliasing - > Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections - > fno-common -Wno-address -fpie -fno-asynchronous-unwind-tables -flto - > DUSING_LTO -Wno-maybe-uninitialized -Wno-uninitialized -Wno- > builtin-declaration-mismatch -Wno-nonnull-compare -Werror-implicit- > function-declaration) > +- if(CMAKE_BUILD_TYPE STREQUAL "Debug") > +- ADD_COMPILE_OPTIONS(-g) > +- endif() > +- if(GCOV STREQUAL "ON") > +- ADD_COMPILE_OPTIONS(--coverage -fprofile-arcs -ftest- > coverage) > +- endif() > +- SET(OPENSSL_FLAGS -include base.h -Wno-error=maybe- > uninitialized -Wno-error=format -Wno-format -Wno-error=unused-but- > set-variable -Wno-cast-qual -Wno-error=implicit-function-declaration) > +- SET(CMOCKA_FLAGS -std=gnu99 -Wpedantic -Wall -Wshadow - > Wmissing-prototypes -Wcast-align -Werror=address -Wstrict-prototypes > -Werror=strict-prototypes -Wwrite-strings -Werror=write-strings - > Werror-implicit-function-declaration -Wpointer-arith -Werror=pointer- > arith -Wdeclaration-after-statement -Werror=declaration-after- > statement -Wreturn-type -Werror=return-type -Wuninitialized - > Werror=uninitialized -Werror=strict-overflow -Wstrict-overflow=2 - > Wno-format-zero-length -Wmissing-field-initializers -Wformat-security > -Werror=format-security -fno-common -Wformat -fno-common -fstack- > protector-strong -Wno-cast-qual) > +- > +- SET(CMAKE_LINKER ${CMAKE_C_COMPILER}) > +- SET(CMAKE_EXE_LINKER_FLAGS "-flto -Wno-error -no-pie" ) > +- if(GCOV STREQUAL "ON") > +- SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} -- > coverage -lgcov -fprofile-arcs -ftest-coverage") > +- endif() > +- SET(CMAKE_C_LINK_EXECUTABLE "<CMAKE_LINKER> > <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> -Wl,--start- > group <LINK_LIBRARIES> -Wl,--end-group") > +- > + endif() > + > + if(NOT TOOLCHAIN STREQUAL "NIOS2_GCC") > +-- > +2.43.2 > + > diff --git a/package/libspdm/libspdm.hash > b/package/libspdm/libspdm.hash > index 23faba1c4b..32415bcfce 100644 > --- a/package/libspdm/libspdm.hash > +++ b/package/libspdm/libspdm.hash > @@ -1,3 +1,3 @@ > # Locally calculated > -sha256 > 84d4a755f57b17775c63b5c8be646d518ce34d5d1b85994b6150ebce9d31b183 > libspdm-3.1.1.tar.gz > +sha256 > 0ee460c0ce5c4d126ca65f9c4bdabd5725b87cec7160b2d06721169df58f3a95 > libspdm-3.2.0.tar.gz > sha256 > 7dc072bff163df39209bbb63e0916f4667c2a84cf3c36ccc84ec7425bc3e4779 > LICENSE.md > diff --git a/package/libspdm/libspdm.mk b/package/libspdm/libspdm.mk > index 34dbb457c4..2ec35be0ac 100644 > --- a/package/libspdm/libspdm.mk > +++ b/package/libspdm/libspdm.mk > @@ -4,7 +4,7 @@ > # > #################################################################### > ############ > > -LIBSPDM_VERSION = 3.1.1 > +LIBSPDM_VERSION = 3.2.0 > LIBSPDM_SITE = $(call github,DMTF,libspdm,$(LIBSPDM_VERSION)) > LIBSPDM_LICENSE = BSD-3-Clause > LIBSPDM_LICENSE_FILES = LICENSE.md
diff --git a/package/libspdm/0001-CMakeLists-remove-fixed-options-for-NONE.patch b/package/libspdm/0001-CMakeLists-remove-fixed-options-for-NONE.patch new file mode 100644 index 0000000000..0de0ad0079 --- /dev/null +++ b/package/libspdm/0001-CMakeLists-remove-fixed-options-for-NONE.patch @@ -0,0 +1,52 @@ +From d4d6b138d727e484fa9d0fef476ca181681d0695 Mon Sep 17 00:00:00 2001 +From: Wilfred Mallawa <wilfred.mallawa@wdc.com> +Date: Mon, 19 Feb 2024 09:56:14 +1000 +Subject: [PATCH] CMakeLists: remove fixed options for NONE + +The use of the NONE toolchain option is such that we can provide at the +build project level (buildroot etc...). However, the changes introduced +in 811f2b596def04b3a36368cf2098546d7907767f set certain compiler/linker +option that does not comply with the definition of the options as +specified in [1]. This change removes those options. + +[1] https://github.com/DMTF/libspdm/blob/main/doc/build.md#linux-builds-inside-build-environments + +Upstream: https://github.com/DMTF/libspdm/commit/d4d6b138d727e484fa9d0fef476ca181681d0695 +Signed-off-by: Wilfred Mallawa <wilfred.mallawa@wdc.com> +--- + CMakeLists.txt | 19 ------------------- + 1 file changed, 19 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 9c300cc817..f6cf17d269 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -618,25 +618,6 @@ if(CMAKE_SYSTEM_NAME MATCHES "Linux") + SET(CMAKE_EXE_LINKER_FLAGS "") + + SET(CMAKE_C_LINK_EXECUTABLE "") +- +- elseif(TOOLCHAIN STREQUAL "NONE") +- ADD_COMPILE_OPTIONS(-fshort-wchar -fno-strict-aliasing -Wall -Werror -Wno-array-bounds -ffunction-sections -fdata-sections -fno-common -Wno-address -fpie -fno-asynchronous-unwind-tables -flto -DUSING_LTO -Wno-maybe-uninitialized -Wno-uninitialized -Wno-builtin-declaration-mismatch -Wno-nonnull-compare -Werror-implicit-function-declaration) +- if(CMAKE_BUILD_TYPE STREQUAL "Debug") +- ADD_COMPILE_OPTIONS(-g) +- endif() +- if(GCOV STREQUAL "ON") +- ADD_COMPILE_OPTIONS(--coverage -fprofile-arcs -ftest-coverage) +- endif() +- SET(OPENSSL_FLAGS -include base.h -Wno-error=maybe-uninitialized -Wno-error=format -Wno-format -Wno-error=unused-but-set-variable -Wno-cast-qual -Wno-error=implicit-function-declaration) +- SET(CMOCKA_FLAGS -std=gnu99 -Wpedantic -Wall -Wshadow -Wmissing-prototypes -Wcast-align -Werror=address -Wstrict-prototypes -Werror=strict-prototypes -Wwrite-strings -Werror=write-strings -Werror-implicit-function-declaration -Wpointer-arith -Werror=pointer-arith -Wdeclaration-after-statement -Werror=declaration-after-statement -Wreturn-type -Werror=return-type -Wuninitialized -Werror=uninitialized -Werror=strict-overflow -Wstrict-overflow=2 -Wno-format-zero-length -Wmissing-field-initializers -Wformat-security -Werror=format-security -fno-common -Wformat -fno-common -fstack-protector-strong -Wno-cast-qual) +- +- SET(CMAKE_LINKER ${CMAKE_C_COMPILER}) +- SET(CMAKE_EXE_LINKER_FLAGS "-flto -Wno-error -no-pie" ) +- if(GCOV STREQUAL "ON") +- SET(CMAKE_EXE_LINKER_FLAGS "${CMAKE_EXE_LINKER_FLAGS} --coverage -lgcov -fprofile-arcs -ftest-coverage") +- endif() +- SET(CMAKE_C_LINK_EXECUTABLE "<CMAKE_LINKER> <CMAKE_C_LINK_FLAGS> <LINK_FLAGS> <OBJECTS> -o <TARGET> -Wl,--start-group <LINK_LIBRARIES> -Wl,--end-group") +- + endif() + + if(NOT TOOLCHAIN STREQUAL "NIOS2_GCC") +-- +2.43.2 + diff --git a/package/libspdm/libspdm.hash b/package/libspdm/libspdm.hash index 23faba1c4b..32415bcfce 100644 --- a/package/libspdm/libspdm.hash +++ b/package/libspdm/libspdm.hash @@ -1,3 +1,3 @@ # Locally calculated -sha256 84d4a755f57b17775c63b5c8be646d518ce34d5d1b85994b6150ebce9d31b183 libspdm-3.1.1.tar.gz +sha256 0ee460c0ce5c4d126ca65f9c4bdabd5725b87cec7160b2d06721169df58f3a95 libspdm-3.2.0.tar.gz sha256 7dc072bff163df39209bbb63e0916f4667c2a84cf3c36ccc84ec7425bc3e4779 LICENSE.md diff --git a/package/libspdm/libspdm.mk b/package/libspdm/libspdm.mk index 34dbb457c4..2ec35be0ac 100644 --- a/package/libspdm/libspdm.mk +++ b/package/libspdm/libspdm.mk @@ -4,7 +4,7 @@ # ################################################################################ -LIBSPDM_VERSION = 3.1.1 +LIBSPDM_VERSION = 3.2.0 LIBSPDM_SITE = $(call github,DMTF,libspdm,$(LIBSPDM_VERSION)) LIBSPDM_LICENSE = BSD-3-Clause LIBSPDM_LICENSE_FILES = LICENSE.md