* Disable z3 again for Ubuntu, and make the libz3-dev (build) dependency

conditional.
This commit is contained in:
Matthias Klose 2024-09-04 11:53:56 +02:00
parent 48af4f7bc6
commit 2661c00c67
4 changed files with 20 additions and 6 deletions

7
debian/changelog vendored
View File

@ -1,3 +1,10 @@
llvm-toolchain-19 (1:19.1.0~++rc4-2) UNRELEASED; urgency=medium
* Disable z3 again for Ubuntu, and make the libz3-dev (build) dependency
conditional.
-- Matthias Klose <doko@debian.org> Wed, 04 Sep 2024 11:52:22 +0200
llvm-toolchain-19 (1:19.1.0~++rc4-1) unstable; urgency=medium llvm-toolchain-19 (1:19.1.0~++rc4-1) unstable; urgency=medium
* New release candidate. * New release candidate.

2
debian/control vendored
View File

@ -421,7 +421,7 @@ Architecture: any
Depends: ${shlibs:Depends}, libffi-dev, ${misc:Depends}, Depends: ${shlibs:Depends}, libffi-dev, ${misc:Depends},
llvm-19 (= ${binary:Version}), libllvm19 (= ${binary:Version}), libncurses-dev, llvm-19 (= ${binary:Version}), libllvm19 (= ${binary:Version}), libncurses-dev,
llvm-19-tools (= ${binary:Version}), libclang-cpp19 (= ${binary:Version}), llvm-19-tools (= ${binary:Version}), libclang-cpp19 (= ${binary:Version}),
libz3-dev, libxml2-dev libxml2-dev, libz3-dev [!sh4],
Description: Modular compiler and toolchain technologies, libraries and headers Description: Modular compiler and toolchain technologies, libraries and headers
LLVM is a collection of libraries and tools that make it easy to build LLVM is a collection of libraries and tools that make it easy to build
compilers, optimizers, just-in-time code generators, and many other compilers, optimizers, just-in-time code generators, and many other

4
debian/control.in vendored
View File

@ -23,7 +23,7 @@ Build-Depends: debhelper (>= 10.0), cmake, ninja-build,
ocaml-findlib [@OCAML_ARCHS@], ocaml-findlib [@OCAML_ARCHS@],
libctypes-ocaml-dev [@OCAML_ARCHS@], libctypes-ocaml-dev [@OCAML_ARCHS@],
dh-exec, dh-ocaml [@OCAML_ARCHS@], dh-exec, dh-ocaml [@OCAML_ARCHS@],
libpfm4-dev [linux-any], python3-setuptools, libz3-dev [!sh4], libpfm4-dev [linux-any], python3-setuptools, @Z3_DEV_DEP@
# "| hello" is for older buster/bionic distros without spirv support # "| hello" is for older buster/bionic distros without spirv support
# We need to keep the constraints coherent between the two alternatives, otherwise # We need to keep the constraints coherent between the two alternatives, otherwise
# hello would get installed unexpectedly and prevent e.g. wasi-libc from getting pulled # hello would get installed unexpectedly and prevent e.g. wasi-libc from getting pulled
@ -421,7 +421,7 @@ Architecture: any
Depends: ${shlibs:Depends}, libffi-dev, ${misc:Depends}, Depends: ${shlibs:Depends}, libffi-dev, ${misc:Depends},
llvm-@LLVM_VERSION@ (= ${binary:Version}), libllvm@LLVM_VERSION@ (= ${binary:Version}), libncurses-dev, llvm-@LLVM_VERSION@ (= ${binary:Version}), libllvm@LLVM_VERSION@ (= ${binary:Version}), libncurses-dev,
llvm-@LLVM_VERSION@-tools (= ${binary:Version}), libclang-cpp@LLVM_VERSION@ (= ${binary:Version}), llvm-@LLVM_VERSION@-tools (= ${binary:Version}), libclang-cpp@LLVM_VERSION@ (= ${binary:Version}),
libz3-dev, libxml2-dev libxml2-dev, @Z3_DEV_DEP@
Description: Modular compiler and toolchain technologies, libraries and headers Description: Modular compiler and toolchain technologies, libraries and headers
LLVM is a collection of libraries and tools that make it easy to build LLVM is a collection of libraries and tools that make it easy to build
compilers, optimizers, just-in-time code generators, and many other compilers, optimizers, just-in-time code generators, and many other

13
debian/rules vendored
View File

@ -190,12 +190,18 @@ LDFLAGS_EXTRA += -latomic
endif endif
Z3_FLAG = -DLLVM_ENABLE_Z3_SOLVER=OFF Z3_FLAG = -DLLVM_ENABLE_Z3_SOLVER=OFF
ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' libz3-dev) gt 4.7.0; echo $$?),0) # no ocaml support in main for Ubuntu
ifeq (,$(filter $(DEB_HOST_ARCH),sh4)) ifneq ($(DERIVATIVE),Ubuntu)
Z3_FLAG = -DLLVM_ENABLE_Z3_SOLVER=ON ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' libz3-dev) gt 4.7.0; echo $$?),0)
ifeq (,$(filter $(DEB_HOST_ARCH),sh4))
Z3_FLAG = -DLLVM_ENABLE_Z3_SOLVER=ON
endif
endif endif
endif endif
STAGE_2_CMAKE_EXTRA += $(Z3_FLAG) STAGE_2_CMAKE_EXTRA += $(Z3_FLAG)
ifneq (,$(findstring =ON, $(Z3_FLAG)))
Z3_DEV_DEP = libz3-dev [!sh4],
endif
# Change the default CPU for s390x # Change the default CPU for s390x
ZARCH=z196 ZARCH=z196
@ -678,6 +684,7 @@ stamps/preconfigure:
echo "$$f => $$f2"; \ echo "$$f => $$f2"; \
sed -e 's|@DEB_HOST_MULTIARCH@|$(DEB_HOST_MULTIARCH)|g' \ sed -e 's|@DEB_HOST_MULTIARCH@|$(DEB_HOST_MULTIARCH)|g' \
-e "s|@USAGE_BUILD_DEP@|$(USAGE_BUILD_DEP)|g" \ -e "s|@USAGE_BUILD_DEP@|$(USAGE_BUILD_DEP)|g" \
-e "s|@Z3_DEV_DEP@|$(Z3_DEV_DEP)|g" \
-e "s|@MULTILIB_ARCHS@|$(MULTILIB_ARCHS)|g" \ -e "s|@MULTILIB_ARCHS@|$(MULTILIB_ARCHS)|g" \
-e "s|@OCAML_ARCHS@|$(OCAML_ARCHS)|g" \ -e "s|@OCAML_ARCHS@|$(OCAML_ARCHS)|g" \
-e "s|@OMP_ARCHS@|$(OMP_ARCHS)|g" \ -e "s|@OMP_ARCHS@|$(OMP_ARCHS)|g" \