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

merge with top repo #2

Open
wants to merge 319 commits into
base: master
Choose a base branch
from
Open

merge with top repo #2

wants to merge 319 commits into from

Conversation

hmurari
Copy link

@hmurari hmurari commented Aug 24, 2021

No description provided.

mikkoi and others added 30 commits September 1, 2019 21:27
If we don't undefine the macro, it will enter the user's namespace.
This macro is only for our internal use.
Otherwise it would have the "CK_" prefix.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Function _exit(int) is included in unistd.h. Also fork() is here.
Functions exit(int) (C89) and _Exit(int) (C99) are in stdlib.h.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
If we don't undefine the macro, it will enter the user's namespace.
This macro is only for our internal use.
Otherwise it would have the "CK_" prefix.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
It is a CMake best practice to include file 'CTest'
in the project main file and then use option
'BUILD_TESTING' (defined in 'CTest') to enable or disable
building the tests. BUILD_TESTING is ON by default.

https://cmake.org/cmake/help/v3.9/module/CTest.html?highlight=build_testing
https://cmake.org/cmake/help/v3.9/command/add_test.html?highlight=build_testing

Option CHECK_ENABLE_TESTS is deprecated.
Because it is on by default, deprecation warning is only shown
to user when user explicitly turns CHECK_ENABLE_TESTS off.

Suggesting to remove the option by release 0.15.0.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Restrict variable replacement to references of the form @var@.
This is useful for configuring scripts that also use ${VAR} syntax.
Adding @only is precautionary action to prevent future bugs.

Attn. cmake/config.h.in contains ${VAR} in #cmakedefine clauses!

How to use CMake variable substitution.

Wrong:

    #if @HAVE_FORK@
        [..]
    #endif

Because this will result as:

    #if 1
        [..]
    #endif

Better:

    /* Imported CMake variables created during build. */
    #cmakedefine HAVE_FORK 1

    #ifdef HAVE_FORK
        [..]
    #endif

Because this will result as:

    /* Imported CMake variables created during build. */
    #define HAVE_FORK 1

    #ifdef HAVE_FORK
        [..]
    #endif

Or:

    /* Imported CMake variables created during build. */
    /* #undef HAVE_FORK */
    [..]

This is more readable. Now we know which decision actually
was taken.

If you need to pass the parameter to the definition,
it is just as easy:

    /* Imported CMake variables created during build. */
    #cmakedefine CORRECT_SIZE @CORRECT_SIZE@

    #if CORRECT_SIZE >= 20
        [..]
    #endif

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
configure: optional build documentation
Will not convert m4/ax_create_stdint_h.m4 to CMake.
Make the resulting check_stdint.h similar to the old one
(as much as is possible).

GNU Autotools build is untouched. It continues to use m4 macro
and generates check_stdint.h from scratch.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
We have tried to statically link the built libcompat into built libcheck
in CMake without success. With autotools (libtool et.al.) this is
most likely very easy but there is no support on Windows.
So instead of building libcompat separately
we incorporate the necessary parts of libcompat code
directly into libcheck when building libcheck.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Target check is specifically a static library
Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
Variable PROJECT_VERSION was not yet in use when check_stdint.h configuration was updated.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
File check.pc.in is shared with Autotools and CMake build.

File uses variable 'VERSION'.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
For compatibility with the Autotools build which only
uses three parts: major, minor and patch.

CMake allows four components in version numbering:
major, minor, patch and tweak.

Signed-off-by: Mikko Johannes Koivunalho <[email protected]>
jflopezfernandez and others added 30 commits November 3, 2020 09:36
As discussed in the pull request (#315), the user mailing
list has been removed to prevent the bifurcation of the
user base.

It is preferable to have all user questions, feature
requests, and bug reports filed here via the GitHub issues
feature.

Discussion: #315 (comment)
There is a small typo in tests/check_check_sub.c.

Should read `improperly` rather than `inproperly`.
The add-path command in Github Actions has
been deprecated:

https://github.blog/changelog/2020-10-01-github-actions-deprecating-set-env-and-add-path-commands/

This commit enables it use for a little longer, following
the example from:

actions/toolkit#641
Allow use of deprecated add-path
docs: fix simple typo, inproperly -> improperly
Commit 8699473 initialy introduced a
new test, check_mem_leaks, that can be used with Valgrind to find memory
errors.

Since then, test check_mem_leaks can be built with GNU Autotools scripts
but lacks integration into CMake scripts. This means that, when CMake is
used to build the project, check_mem_leaks will NOT be built.

This commit resolves this by adding support for building check_mem_leaks
into CMake scripts as well.

Signed-off-by: Hrvoje Varga <[email protected]>
check_mem_leaks: integrate check_mem_leaks into CMake
On PowerPC architectures (ppc, ppc64el, powerp) 'long double' has a
precision of 106-bit, compared to 80-bit precision on amd64.

This leads to the test_ck_assert_(float|double|ldouble)_eq_tol succeed
rather than fail as expected, cause 0.003-0.002 will be actually
slightly bigger than 0.001 and not slightly smaller.

Increase the change to the tolerance, so it will be on all architectures
smaller than the difference of ~0.001 and the unit tests will fail as
expected.
The way to install casks for brew has changed, 
causing the tests to fail. Updating to the new
command syntax.
Update how casks are installed for osx tests
PowerPC test suite failures
The main .cvsignore file got deleted in 6f5da9a but that commit missed the
ones in the various directories.
And make a similar fix for includedir while we're here.

Bug: https://bugs.gentoo.org/729642
scan-build updated and is identifying issues with
the sprintf replacement:
https://github.com/libcheck/check/pull/327/checks?check_run_id=2135844732

This needs to be investigated and resolved. However,
it need not hold up other changes being submitted.
Ignore scan-build results for snprintf replacement
Drop the remaining cvsignore files
Fix pkgconfig file's libdir value
The docs building test also builds on Linux,
and doing this also on OSX is unnecessary.
Building LaTeX should be the same on both
platforms. Running on both was unnecessary.
Remove docs building test for OSX
#325

    cmake_minimum_required(...) is version 3.9 required in top level CMakeLists.txt, In this file, the funcion add_link_options(...) is invoked at line 251 and it`s news from CMAKE version 3.13.
Update CMake required from 3.9 to 3.13
Windows: Inform compiler (GCC/MinGW) that format strings to use are GNU/c99 style
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.