Skip to content
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

Release 10.7 #628

Merged
merged 7 commits into from
Mar 6, 2023
Merged

Release 10.7 #628

merged 7 commits into from
Mar 6, 2023

Conversation

bduranleau-nr
Copy link
Contributor

No description provided.

bduranleau-nr and others added 7 commits February 15, 2023 13:01
version and codename update for next release.
1) Clarify wording in main `development.md` regarding integration test
requirements.
2) Update `dev_environment.md` to reflect updates made in the dockerized
dev environment.
Give the user an option to use `protobuf-c` from location alternative to
`vendor` subdirectory via `PROTOBUF_C_PREFIX` environmental variable.
`$PROTOBUF_C_PREFIX/bin` needs to have `protoc-c` binary, 
`$PROTOBUF_C_PREFIX/include` needs to have `protobuf-c/protobuf-c.h`
header file and `$PROTOBUF_C_PREFIX/lib` needs to have `libprotobuf-c.a`.
By default agent's build system will try to look for `protobuf-c`
dependency in location returned by 
`pkg-config libprotobuf-c --variable=prefix`, a location where
`protobuf-c` is installed in the system via package managers. If that 
location does not have `protobuf-c`, agent's build system will fallback 
to using `protobuf-c` from `vendor` directory. This enhancement speeds 
up agent build because neither `vendor/protobuf` nor `vendor/protobuf-c`
need to be build if `protobuf-c` is installed in the system by the user.

If user or system provided `protobuf-c` does not meet agent's build
system requirements, the build will abort with an error message.

Force the agent to use static version of pcre library. This avoids the
issue with runtime dependency on libpcre shared object, that is hard to
satisfy universally, because different Linux distributions use different
name of the shared object: libpcre.so or libpcre3.so. Additionally the
user has an option to point to pcre library installation via `PCRE_PREFIX`
environmental variable. By default agent's build system  will try to look
for pcre dependency using `pkg-config`.

If user or system provided `pcre` does not meet agent's build system
requirements, the build will abort with an error message.

To troubleshoot build issues caused by dependencies, agent will log
which dependencies it is using.
By default let the agent link to whatever libpcre is available on the
system (most likely a shared object). However for release builds the
agent needs to link with a static version of libpcre to ensure it runs
on all Linux distros. This is needed because different Linux
distributions use different names for the shared object and its
impossible to link to a shared object that works universally on all
Linux distributions. If PCRE_STATIC is set to yes, agent's build system
will enforce linking to static version of libpcre and if it is not
available, the build will abort.

Supplements #613
Address gcc12 compilation warnings:

1. Use `#pragma GCC diagnostic ignored "-Waddress"` to silence 
   "the comparison will always evaluate as 'false' for the address of 
   'val' will never be NULL" warnings for struct members that are 
   defined as `char val[1]`
2. Unroll `nrunlikely` macro to help compiler understand NULL check in 
   `nr_realloc`
3. Address `stringop-overflow` in `nr_php_call`, `nr_php_call_callable`
   and `nr_php_call_fcall_info` macros.

---------

Co-authored-by: Michal Nowacki <[email protected]>
Co-authored-by: ZNeumann <[email protected]>
Co-authored-by: Michal Nowacki <[email protected]>
Co-authored-by: Michael Fulbright <[email protected]>
Co-authored-by: mfulb <[email protected]>
@lavarou lavarou self-requested a review March 3, 2023 22:15
@zsistla zsistla requested review from ZNeumann and mfulb March 3, 2023 22:17
@bduranleau-nr
Copy link
Contributor Author

ok jenkins

1 similar comment
@bduranleau-nr
Copy link
Contributor Author

ok jenkins

@bduranleau-nr bduranleau-nr merged commit 1cc9448 into main Mar 6, 2023
@rvanlaak rvanlaak mentioned this pull request Mar 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants