8000 Make Z3 a transitive dependency of CIRCTLogicalEquivalence by rwy7 · Pull Request #5261 · llvm/circt · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Make Z3 a transitive dependency of CIRCTLogicalEquivalence #5261

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 1 commit into from
May 25, 2023

Conversation

rwy7
Copy link
Contributor
@rwy7 rwy7 commented May 25, 2023
  • Put the Z3 libraries in the public link libraries of CIRCTLogicalEquivalence
  • Put the Z3 include dirs in the public includes of CIRCTLogicalEquivalence
  • Make the Z3 include dirs SYSTEM, to silence some warnings in the z3 headers

By making z3 a public dependency of CIRCTLogicalEquivalence, circt-lec will also gain a dependency on z3. This fixes a compile error where circt-lec was missing the Z3 include directories (on my system).

The error:

[305/338] Building CXX object tools/circt/tools/circt-lec/CMakeFiles/circt-lec.dir/circt-lec.cpp.o
FAILED: tools/circt/tools/circt-lec/CMakeFiles/circt-lec.dir/circt-lec.cpp.o 
/opt/homebrew/opt/ccache/libexec/clang++ -DGTEST_HAS_RTTI=0 -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_LIBCPP_ENABLE_ASSERTIONS -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/Users/robertyoung/src/circt/build/tools/circt/tools/circt-lec -I/Users/robertyoung/src/circt/tools/circt-lec -I/Users/robertyoung/src/circt/build/include -I/Users/robertyoung/src/circt/llvm/llvm/include -I/Users/robertyoung/src/circt/include -I/Users/robertyoung/src/circt/build/tools/circt/include -isystem /Users/robertyoung/src/circt/llvm/llvm/../mlir/include -isystem /Users/robertyoung/src/circt/build/tools/mlir/include -gdwarf-4 -fno-omit-frame-pointer -fPIC -fvisibility-inlines-hidden -Werror=date-time -Werror=unguarded-availability-new -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wmissing-field-initializers -pedantic -Wno-long-long -Wc++98-compat-extra-semi -Wimplicit-fallthrough -Wcovered-switch-default -Wno-noexcept-type -Wnon-virtual-dtor -Wdelete-non-virtual-dtor -Wsuggest-override -Wstring-conversion -Wmisleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -g -arch arm64 -isysroot /Library/Developer/CommandLineTools/SDKs/MacOSX12.3.sdk -mmacosx-version-min=12.2 -fvisibility-inlines-hidden  -fno-exceptions -funwind-tables -fno-rtti -fno-exceptions -funwind-tables -fno-rtti -std=c++17 -MD -MT tools/circt/tools/circt-lec/CMakeFiles/circt-lec.dir/circt-lec.cpp.o -MF tools/circt/tools/circt-lec/CMakeFiles/circt-lec.dir/circt-lec.cpp.o.d -o tools/circt/tools/circt-lec/CMakeFiles/circt-lec.dir/circt-lec.cpp.o -c /Users/robertyoung/src/circt/tools/circt-lec/circt-lec.cpp
In file included from /Users/robertyoung/src/circt/tools/circt-lec/circt-lec.cpp:16:
In file included from /Users/robertyoung/src/circt/include/circt/LogicalEquivalence/LogicExporter.h:17:
/Users/robertyoung/src/circt/include/circt/LogicalEquivalence/Solver.h:20:10: fatal error: 'z3++.h' file not found
#include <z3++.h>
         ^~~~~~~~
1 error generated.

- Put the Z3 library in the public link libraries of CIRCTLogicalEquivalence
- Put the Z3 headers in the public includes of CIRCTLogicalEquivalence

Fixes a compile error where circt-lec was missing the Z3 include directories.
@rwy7
Copy link
Contributor Author
rwy7 commented May 25, 2023

cc @TaoBi22

@rwy7 rwy7 merged commit f627ec6 into llvm:main May 25, 2023
@rwy7 rwy7 deleted the fix-z3 branch May 25, 2023 18:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants
0