lucy-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <>
Subject [lucy-issues] [jira] [Commented] (CLOWNFISH-80) Remove test code from binaries
Date Fri, 08 Jul 2016 13:19:11 GMT


ASF GitHub Bot commented on CLOWNFISH-80:

GitHub user nwellnhof opened a pull request:

    Build separate test binaries

    This brings the size of the Clownfish library down to 95 KB on 32-bit Ubuntu (with `-fno-asynchronous-unwind-tables`),
88 KB on 64-bit Windows, and 82 KB on OS X.
    Fixes CLOWNFISH-80.

You can merge this pull request into a Git repository by running:

    $ git pull separate-tests

Alternatively you can review and apply these changes as the patch at:

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #74
commit 5bda4dadd15edf1cd9c0b1d171b99dcf935a6c68
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:06Z

    Rename core directory to "cfcore" for CPAN tarball

commit 8ba4e61987f00db2624818c4fa1a6f9c1b4f79b8
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:13Z

    Move tests to separate directory

commit 83c9045079e5e5e21b487feaaeb5a506108b24b3
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:18Z

    Make some internal symbols visible
    Otherwise the separate test binary can't see them.

commit 24fb4d901a56a59913c9ff5a5e67840540215a48
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:23Z

    Disable a test in TestClass
    Ivars offsets aren't visible from a separate test binary.

commit a80e405ea7878f2eafc3562ab35c3e9ba6eff0c4
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:27Z

    Add "xs_prereqs" module parameter
    This parameter lists the names of other Clownfish XS modules whose
    symbols are referenced from a module. The corresponding libraries
    are linked against on Windows.
    This obviates the need to call cf_linker_flags manually.
    If we start to install parcel metadata, it should be possible to
    determine the XS prerequisites automatically (see CLOWNFISH-83).

commit ef738c212adbed879cc75ab49675deae4f6e8b04
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:30Z

    Separate test binaries
    The C bindings build a separate shared library
    Building a static library would simplify things a little but would
    require another per-parcel macro on Windows (like
    The Perl bindings build a separate XS module Clownfish::Test.
    For the Go and Python bindings, a separate static library
    libtestcfish.a is built.

commit bad95e074b7cf094cf8c06205f7b1c41ddcaa45b
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:36Z

    Bump ExtUtils::ParseXS dependency to 3.00
    Older versions wouldn't clear the @BootCode global and mess up the
    BOOT section when building multiple XS files.

commit 3764180f0e7b5893f79d7ecb806b7106dd530b29
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:39Z

    Fix shared library compilation for Python
    Untested. AFAIU, the static library built for Python is linked into
    a shared library later. This requires to use -fPIC and define
    I think it would be better if the Python bindings followed the
    approach I took for Perl: Pass a list of object files instead of
    using a static library.

commit a45abf04a63b7a9d0a2fc40af79216d8778d4d84
Author: Nick Wellnhofer <>
Date:   2016-07-08T11:57:47Z

    Fix Makefile paths for Perl CPAN build


> Remove test code from binaries
> ------------------------------
>                 Key: CLOWNFISH-80
>                 URL:
>             Project: Apache Lucy-Clownfish
>          Issue Type: Improvement
>            Reporter: Nick Wellnhofer
> We need a mechanism to build binaries that don't contain all the test code.

This message was sent by Atlassian JIRA

View raw message