firebird icon indicating copy to clipboard operation
firebird copied to clipboard

5.0.0-RC1 build failure with --without-tomcrypt --enable-client-only

Open loqs opened this issue 2 years ago • 1 comments

Versions: firebird v5.0.0-RC1 gcc 13.2.1 tomcrypt not installed

To reproduce:

autoreconf -vfi
./configure --without-tomcrypt --enable-client-only
make
....
g++ -I/var/cache/github/firebird/src/include/gen -I/var/cache/github/firebird/src/include   -I/var/cache/github/firebird/extern/boost -I/var/cache/github/firebird/extern/libcds -DCDS_BUILD_STATIC_LIB -I/var/cache/github/firebird/extern/re2 -ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DAMD64 -pipe -MMD -fPIC -fmessage-length=0 -O3 -fno-omit-frame-pointer -fno-rtti -std=c++17 -Wno-invalid-offsetof -Wno-class-memaccess    -c /var/cache/github/firebird/src/common/classes/TomCryptHash.cpp -o /var/cache/github/firebird/temp/Release/common/classes/TomCryptHash.o
/var/cache/github/firebird/src/common/classes/TomCryptHash.cpp:33:10: fatal error: tomcrypt.h: No such file or directory
   33 | #include <tomcrypt.h>
      |          ^~~~~~~~~~~~
compilation terminated.

Full output https://gist.github.com/loqs/517bb977674927829fa1e9f598f28e93 I am working around the issue by deleteing src/common/classes/TomCryptHash.cpp which I believe is included by a wildcard make rule and not used later in the build.

loqs avatar Oct 16 '23 15:10 loqs

Would it be acceptable to filter out TomCryptHash.o when WITH_TOMCRYPT=N?

diff --git a/builds/posix/make.shared.variables b/builds/posix/make.shared.variables
index 5074e5cf68..a3d537fda8 100644
--- a/builds/posix/make.shared.variables
+++ b/builds/posix/make.shared.variables
@@ -27,6 +27,9 @@ AllObjects=
 # Common files
 CO1:= $(call dirObjects,common)
 CO2:= $(call dirObjects,common/classes)
+ifeq ($(WITH_TOMCRYPT),N)
+CO2:= $(filter-out %TomCryptHash.o,$(CO2))
+endif
 CO3:= $(call dirObjects,common/config)
 CO4:= $(call dirObjects,common/sha2)
 #CO5:= $(call dirObjects,common/exceptions)

loqs avatar Feb 01 '24 21:02 loqs