-
Notifications
You must be signed in to change notification settings - Fork 2k
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
Disable building Proton JavaScript bindings and other non-essential stuff #2280
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK.
Does not block, but why do DEFAULT_JAVASCRIPT
and DEFAULT_GO
need to be set to OFF
both in CMakeLists.txt
and on the cmake
command line?
@zkbot try |
The |
💥 Test timed out |
ef54438
to
28174a7
Compare
@zkbot try |
@zkbot retry |
# Set the default SSL/TLS implementation | ||
-find_package(OpenSSL) | ||
+#find_package(OpenSSL) | ||
find_package(PythonInterp REQUIRED) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Should this be disabled?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
No, if disabled, build fails. There are generated source files which require Python.
# Check for valgrind here so tests under proton-c/ and examples/ can use it. | ||
-find_program(VALGRIND_EXE valgrind DOC "Location of the valgrind program") | ||
+#find_program(VALGRIND_EXE valgrind DOC "Location of the valgrind program") | ||
mark_as_advanced (VALGRIND_EXE) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comment this out as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think you mean that you want "#mark_as_advanced" ? From cmake docs, 'mark_as_advanced' doesn't do anything with regards to the build, it will hide the variable from the CMake GUI. I didn't comment it out as I wanted the patch to be as small as possible.
-find_package(SWIG) | ||
+#find_package(SWIG) | ||
# FindSwig.cmake "forgets" make its outputs advanced like a good citizen | ||
mark_as_advanced(SWIG_DIR SWIG_EXECUTABLE SWIG_VERSION) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comment this out as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See above about mark_as_advanced.
+#find_library(CYRUS_SASL_LIBRARY sasl2) | ||
+#find_path(CYRUS_SASL_INCLUDE_DIR sasl/sasl.h PATH_SUFFIXES include) | ||
+#find_package_handle_standard_args(CyrusSASL DEFAULT_MSG CYRUS_SASL_LIBRARY CYRUS_SASL_INCLUDE_DIR) | ||
mark_as_advanced(CYRUS_SASL_LIBRARY CYRUS_SASL_INCLUDE_DIR) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comment this out as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto
# Find saslpasswd2 executable to generate test config | ||
-find_program(SASLPASSWD_EXE saslpasswd2 DOC "Program used to make SASL user db for testing") | ||
+#find_program(SASLPASSWD_EXE saslpasswd2 DOC "Program used to make SASL user db for testing") | ||
mark_as_advanced(SASLPASSWD_EXE) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comment this out as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto
# Prerequisites for Go | ||
-find_program(GO_EXE go) | ||
+#find_program(GO_EXE go) | ||
mark_as_advanced(GO_EXE) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Comment this out as well.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ditto
From 03f5fc0826115edbfca468261b70c0daf627f488 Mon Sep 17 00:00:00 2001 | ||
From: Simon <simon@bitcartel.com> | ||
Date: Thu, 27 Apr 2017 17:15:59 -0700 | ||
Subject: [PATCH] Only build minimal dependencies needed for cpp bindings. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Add that this enables C++11 and builds a static library.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
... or separate that into another patch maybe. (Does not block.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'll change the subject (and commit message) in a bit.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
⌛ Trying commit 28174a7 with merge de11d7b... |
Closes zcash#2279. Configures CMake to enable C++11, build static libaries and only build cpp bindings with minimal dependencies. Documentation, examples, tests and other language bindings are no longer built. CMake will no longer try to find commands and packages which are not required for building the target.
28174a7
to
b9f6e40
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
New PR pushed.
Checked CI server and buildbot tests passed. |
retrying due to previous failure of Buildbot to tell Homu about the final build status and config update to fix the issue @zkbot retry |
Disable building Proton JavaScript bindings and other non-essential stuff Closes #2279.
@zkbot try |
💥 Test timed out |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
utACK
Disable building Proton JavaScript bindings and other non-essential stuff Closes #2279.
Disable building Proton JavaScript bindings and other non-essential stuff Closes #2279.
Future readers: the various merges above were created while I was testing the CI. I have deleted the corresponding commands and responses to clean up the PR history. |
I'm kicking this out of 1.0.9 in favor of #2362. Let's follow up on this after 1.0.9. |
@nathan-at-least This should be included in 1.0.9 because it fixes potential build problems for people who do want to build proton. Otherwise some people will opt in to build and be confused as to why it doesn't. |
If I understand correctly, this branch passes on our CI builder that doesn't have the other languages installed, so our CI system does not test the build fixes that this patch introduces. We need to set up a CI builder specifically to test those changes, and I don't believe we have time to do so today. |
I filed #2365 to follow up on the CI need here. |
I moved #2365 and this PR back into 1.0.9 low on the page, indicating lower priority than the other tickets in 1.0.9. |
We should make a list of stuff to build without this patch: openssl |
@ageis valgrind, emscripten, cyrus-sasl, perl, python |
📌 Commit b9f6e40 has been approved by |
…at-least Disable building Proton JavaScript bindings and other non-essential stuff Closes #2279.
Closes #2279.