-
Notifications
You must be signed in to change notification settings - Fork 72
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
Problem: Out-of-date zproject #85
base: master
Are you sure you want to change the base?
Conversation
Solution: Update zproject
"failed to parse FILEMQ_VERSION_${which} from filemq.h" | ||
) | ||
endif() | ||
set(FILEMQ_${which}_VERSION ${CMAKE_MATCH_1}) |
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 believe the new zproject's approach to this problem is much more elegant so this should be removed
######################################################################## | ||
# LIBSODIUM dependency | ||
######################################################################## | ||
find_package(libsodium) | ||
IF (LIBSODIUM_FOUND) | ||
include_directories(${LIBSODIUM_INCLUDE_DIRS}) | ||
list(APPEND MORE_LIBRARIES ${LIBSODIUM_LIBRARIES}) | ||
add_definitions(-DHAVE_LIBSODIUM) | ||
list(APPEND OPTIONAL_LIBRARIES ${LIBSODIUM_LIBRARIES}) | ||
ENDIF (LIBSODIUM_FOUND) |
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 really don't think filemq uses CURVE authentication in it's current state so I think dropping the libsodium dependency is reasonable. The current tests do not depend on it, so it is assumed not needed unless someone implements CURVE via libzmq
Only easy logic regenerations were done, a PR will be submitted later to add in the additional logic from zproto
Regenerate .c and .h
All src files were regenerated either via zproject or zproto. Zproto has a lot of logic changes that I omitted and will submit as a separate PR at a later date |
Additionally the ruby bindings, but there were no changes.
Solution: Update zproject
The initial commit represents the unedited output obtained by running
gsl project.xml
without any pruning. Subsequent commits will gradually prune unnecessary parts and make necessary additions or removals.During my investigation of #84, I discovered that zproject needed to be regenerated. The specific fix for the drafts that fail to compile relates to
.if project.stable
(see here). However, currently, CMake is not functioning as expected. Therefore, I will debug why zproject isn't performing its job correctly and why the .git solution works whereas defaulting drafts=on doesn't.This situation serves as a valuable test for zproject, assessing its effectiveness in updating older projects. While it builds successfully on my Debian trixie WSL when using autotools, it encounters issues with cmake.
The objective of this PR is to bring this repository up to date, stress test zproject, gain insights into filemq and its community requirements/desires, and enhance zproject to better meet the needs of both new and established projects within zeromq.
As a first step, I am sharing the output of the updated zproject, which I will document and welcome feedback on each step. I believe this PR is not yet ready for merging and will therefore remain in a draft state.
Here is a todo list based on the output what I think needs done: