Fix build for 64bit field under OSX #70

pull peterdettman wants to merge 1 commits into bitcoin-core:master from peterdettman:osx-64bit changing 1 files +11 −6
  1. peterdettman commented at 2:54 am on October 26, 2014: contributor
  2. sipa commented at 10:15 am on October 26, 2014: contributor
    Looks good to me; comments, @theuni?
  3. peterdettman force-pushed on Oct 27, 2014
  4. evoskuil commented at 8:26 pm on October 27, 2014: contributor
    Verified compile on OSX 10.10
  5. theuni commented at 8:55 pm on October 27, 2014: contributor

    Well, the intention for the _common lib was for it to contain anything necessary for bench/test/lib. If we’re going to change its meaning to just mean the asm bits, let’s be explicit about that. Also, it can be stuffed into a var to avoid adding all the extra if’s. Something like:

     0diff --git a/Makefile.am b/Makefile.am
     1index a9df7d5..9207688 100644
     2--- a/Makefile.am
     3+++ b/Makefile.am
     4@@ -1,8 +1,16 @@
     5 ACLOCAL_AMFLAGS = -I m4
     6 INCLUDES = $(SECP_INCLUDES)
     7 lib_LTLIBRARIES = libsecp256k1.la
     8-noinst_LTLIBRARIES = libsecp256k1_common.la
     9-include_HEADERS = include/secp256k1.h
    10+noinst_LTLIBRARIES=
    11+
    12+if USE_ASM
    13+ASM_LIB=libsecp256k1_asm.la
    14+noinst_LTLIBRARIES += $(ASM_LIB)
    15+libsecp256k1_asm_la_SOURCES = src/field_5x52_asm.asm
    16+else
    17+ASM_LIB=
    18+endif
    19+
    20 noinst_HEADERS =
    21 noinst_HEADERS += src/group.h
    22 noinst_HEADERS += src/group_impl.h
    23@@ -33,14 +41,9 @@ noinst_HEADERS += src/field_impl.h
    24 pkgconfigdir = $(libdir)/pkgconfig
    25 pkgconfig_DATA = libsecp256k1.pc
    26
    27-libsecp256k1_common_la_SOURCES =
    28-if USE_ASM
    29-libsecp256k1_common_la_SOURCES += src/field_5x52_asm.asm
    30-endif
    31-
    32 libsecp256k1_la_SOURCES = src/secp256k1.c
    33 libsecp256k1_la_CPPFLAGS = -I$(top_srcdir)/include $(SECP_INCLUDES)
    34-libsecp256k1_la_LIBADD = libsecp256k1_common.la $(SECP_LIBS)
    35+libsecp256k1_la_LIBADD = $(ASM_LIB) $(SECP_LIBS)
    36
    37 noinst_PROGRAMS =
    38 if USE_BENCHMARK
    39@@ -54,7 +57,7 @@ if USE_TESTS
    40 noinst_PROGRAMS += tests
    41 tests_SOURCES = src/tests.c
    42 tests_CPPFLAGS = -DVERIFY $(SECP_TEST_INCLUDES)
    43-tests_LDADD = libsecp256k1_common.la $(SECP_LIBS) $(SECP_TEST_LIBS)
    44+tests_LDADD = $(ASM_LIB) $(SECP_LIBS) $(SECP_TEST_LIBS)
    45 tests_LDFLAGS = -static
    46 TESTS = tests
    47 endif
    
  6. peterdettman commented at 5:32 am on October 28, 2014: contributor
    @theuni I don’t think the definition of common was changed; it’s just that it currently only contains asm stuff, and so when not using asm, it would be empty (causing OSX’s ar to choke). Adding COMMON_LIB variable would be fine.
  7. peterdettman force-pushed on Oct 30, 2014
  8. peterdettman force-pushed on Oct 31, 2014
  9. peterdettman commented at 5:07 pm on October 31, 2014: contributor
    COMMON_LIB added and rebased
  10. Fix build for 64bit field under OSX
    - caused by https://github.com/bitcoin/secp256k1/commit/8881212ebc43e67052ec06dec8beb459769fbab7
    - OSX's ar tool doesn't work for empty archives ("ar: no archive members specified")
    - introduce COMMON_LIB variable; leave empty when not using asm
    e2d66a2c62
  11. peterdettman force-pushed on Nov 3, 2014
  12. sipa cross-referenced this on Nov 3, 2014 from issue First compiling with asm and then without leaves the asm code in the binary by sipa
  13. sipa merged this on Nov 3, 2014
  14. sipa closed this on Nov 3, 2014

  15. sipa referenced this in commit 49596769d4 on Nov 3, 2014
  16. peterdettman deleted the branch on Nov 6, 2014
  17. ysangkok referenced this in commit e7f4ff4c62 on Mar 19, 2020

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin-core/secp256k1. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-30 09:15 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me