Skip to content

Get ring building on Mac OS X#3

Merged
briansmith merged 5 commits intowipfrom
macosx
Aug 3, 2015
Merged

Get ring building on Mac OS X#3
briansmith merged 5 commits intowipfrom
macosx

Conversation

@briansmith
Copy link
Owner

Closes #2.

This change is being made in preparation for adding a |TARGET_OS| build
option. |TARGET_ARCH_BASE| is used to decide which assembly language
code to compile, and to set |TARGET_ARCH| (the target flags passed to
the compilers and linker) if it isn't already set.
Carl Mehner reported that Mac OS X's ar(1) does not support the D flag
that tells it build a deterministic archive.

According to Debian[1], recent versions of GNU |ar| will build
determistic archives by default anyway, so there's not a pressing need
to force the issue.

[1] https://wiki.debian.org/ReproducibleBuilds/TimestampsInStaticLibraries
Carl Mehner reported that the build fails on Mac OS X using its
normal Apple Clang toolchain because that toolchain requires a slightly
different set of perlasm and linker options.

This commit introduces the |TARGET_OS| build option to allow us to make
operating-system-dependent choices during the build. It isn't ideal to
use |TARGET_OS| for this problem because it's really an issue with the
toolchain (a host issue), but this seems to be a reasonable first step
while we figure out a long-term solution.
@briansmith briansmith mentioned this pull request Aug 2, 2015
@briansmith briansmith force-pushed the macosx branch 8 times, most recently from af421f8 to 04f86d7 Compare August 2, 2015 22:12
Only build with the default version of clang for now, since that is all
that is currently working.
Make the Makefile require a standard
|TARGET=<arch>-<vendor>-<sys>-<abi>| variable to be set instead of
requiring |TARGET_OS| and |TARGET_ARCH_BASE|.

Also, have the Makefile generate outputs to a subdirectory of build/
that names the target and compiler. This will make it easier and less
error-prone to test multiple configurations using a single source tree,
and will make some future cross-compilation targets easier.
@briansmith briansmith merged this pull request into wip Aug 3, 2015
@briansmith briansmith deleted the macosx branch August 3, 2015 05:08
@briansmith briansmith mentioned this pull request May 25, 2016
briansmith pushed a commit that referenced this pull request Jun 23, 2016
Also add a test.

This is the last of the openssl/asn1.h includes from the directories that are
to be kept in the core libcrypto library. (What remains is to finish sorting
out the crypto/obj stuff. We'll also want to retain a decoupled version of the
PKCS#12 stuff.)

Functions that need to be audited for reuse:
i2d_DHparams

BUG=54

Change-Id: Ibef030a98d3a93ae26e8e56869f14858ec75601b
Reviewed-on: https://boringssl-review.googlesource.com/7900
Reviewed-by: Steven Valdez <[email protected]>
Reviewed-by: David Benjamin <[email protected]>
tomaka pushed a commit to tomaka/ring that referenced this pull request Jul 4, 2018
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.

1 participant