-
Notifications
You must be signed in to change notification settings - Fork 13
Changes dictated by C23 standards #43
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
Conversation
…onfigure.ac, removed unused directory from CFLAGS include arguments
|
Tests failing here: |
Please rebase, this should be fixed by #44. |
|
As per Jeff's suggestion CONST keywords were turned into standard const. I also defined MODULE_SCOPE in configure.ac in order to avoid a conflicting definition in Tcl9 but a clearly suboptimal solution |
|
The Mac CI seems to be failing to find a yajl include: |
|
The package doesn't build on Debian/Ubuntu and they are close to the pre-release freeze. If you want to take your time before integrating this pull request in a new bugfix release let me know. In that case I will produce a patch for the Debian package that fixes the C23 standards issue |
| # yajl incorrectly specified $(prefix)/include/yajl in pkg-config. This | ||
| # has been reported upstream as https://github.com/lloyd/yajl/pull/139. | ||
| # Until it's fixed, we work around it and get to the parent directory. | ||
| INCLUDES = @PKG_INCLUDES@ @TCL_INCLUDES@ $(YAJL_CFLAGS) $(YAJL_CFLAGS)/.. |
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.
This is the cause of the failure to build on mac. See the comment just above of this line. Why are you removing the fix?
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.
Even though the compilation flawlessly works on linux the options come with an -I /.. because YAJL_CFLAGS is an empty string. I guess the answer lies in a proper way to address the ticket quoted in the comments...the current status of the fix may be harmless for Linux but if we manage to have consistent option argument values it's safer (why tinkering with a non existing and incongruous '/..' directory after all?). Maybe we should let 'configure' build the YAJL_CFLAGS consistently with all the switches
-- M
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.
How do you end up with an empty YAJL_CFLAGS, given this?
Lines 191 to 192 in b737336
| PKG_CHECK_MODULES([YAJL], [yajl >= 2.0], [], | |
| [AC_MSG_ERROR([Cannot find yajl])]) |
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'm fine with fixing the pkg-config output earlier in configure. Can you please put the fix back until we do so?
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.
Done. It's part of this conversation now
Revert symbol INCLUDE modification while the issue with the YAJL_CFLAGS is solved by fixing pkg-config
|
The CI is still failing on Mac. Do we want to fix those before merging this? |
Change declarations that break C23 standards. I took the liberty of renaming configure.in as configure.ac (as now customary with autotools) and also removed an unused directory from CFLAGS include arguments. Now the source code relies on config.h to define the PACKAGE_VERSION symbol