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

Rebuild for Python 3.7, GCC 7, R 3.5.1, openBLAS 0.3.2 #13

Merged
merged 5 commits into from
Oct 19, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 44 additions & 0 deletions .ci_support/linux_c_compilergcccxx_compilergxx.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
build_number_decrement:
- '0'
c_compiler:
- gcc
channel_sources:
- conda-forge/label/gcc7,defaults
channel_targets:
- conda-forge gcc7
cxx_compiler:
- gxx
docker_image:
- condaforge/linux-anvil-comp7
fontconfig:
- '2.13'
freetype:
- 2.9.1
harfbuzz:
- '1'
icu:
- '58'
openssl:
- 1.0.2
pin_run_as_build:
fontconfig:
max_pin: x
freetype:
max_pin: x
harfbuzz:
max_pin: x
icu:
max_pin: x
openssl:
max_pin: x.x.x
zlib:
max_pin: x.x
zip_keys:
- - c_compiler
- cxx_compiler
- channel_sources
- channel_targets
- docker_image
- build_number_decrement
zlib:
- '1.2'
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
build_number_decrement:
- '1000'
c_compiler:
- toolchain_c
channel_sources:
Expand Down Expand Up @@ -31,5 +33,12 @@ pin_run_as_build:
max_pin: x.x.x
zlib:
max_pin: x.x
zip_keys:
- - c_compiler
- cxx_compiler
- channel_sources
- channel_targets
- docker_image
- build_number_decrement
zlib:
- '1.2'
43 changes: 43 additions & 0 deletions .ci_support/osx_c_compilerclangcxx_compilerclangxx.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
MACOSX_DEPLOYMENT_TARGET:
- '10.9'
build_number_decrement:
- '0'
c_compiler:
- clang
channel_sources:
- conda-forge/label/gcc7,defaults
channel_targets:
- conda-forge gcc7
cxx_compiler:
- clangxx
freetype:
- 2.9.1
harfbuzz:
- '1'
icu:
- '58'
macos_machine:
- x86_64-apple-darwin13.4.0
macos_min_version:
- '10.9'
openssl:
- 1.0.2
pin_run_as_build:
freetype:
max_pin: x
harfbuzz:
max_pin: x
icu:
max_pin: x
openssl:
max_pin: x.x.x
zlib:
max_pin: x.x
zip_keys:
- - c_compiler
- cxx_compiler
- channel_sources
- channel_targets
- build_number_decrement
zlib:
- '1.2'
Original file line number Diff line number Diff line change
@@ -1,5 +1,7 @@
MACOSX_DEPLOYMENT_TARGET:
- '10.9'
build_number_decrement:
- '1000'
c_compiler:
- toolchain_c
channel_sources:
Expand Down Expand Up @@ -31,5 +33,11 @@ pin_run_as_build:
max_pin: x.x.x
zlib:
max_pin: x.x
zip_keys:
- - c_compiler
- cxx_compiler
- channel_sources
- channel_targets
- build_number_decrement
zlib:
- '1.2'
24 changes: 21 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,28 @@
version: 2

jobs:
build_linux_:
build_linux_c_compilergcccxx_compilergxx:
working_directory: ~/test
machine: true
environment:
- CONFIG: "linux_"
- CONFIG: "linux_c_compilergcccxx_compilergxx"
steps:
- checkout
- run:
name: Fast finish outdated PRs and merge PRs
command: |
./.circleci/fast_finish_ci_pr_build.sh
./.circleci/checkout_merge_commit.sh
- run:
command: docker pull condaforge/linux-anvil
- run:
# Run, test and (if we have a BINSTAR_TOKEN) upload the distributions.
command: ./.circleci/run_docker_build.sh
build_linux_c_compilertoolchain_ccxx_compilertoolchain_cxx:
working_directory: ~/test
machine: true
environment:
- CONFIG: "linux_c_compilertoolchain_ccxx_compilertoolchain_cxx"
steps:
- checkout
- run:
Expand All @@ -23,4 +40,5 @@ workflows:
version: 2
build_and_test:
jobs:
- build_linux_
- build_linux_c_compilergcccxx_compilergxx
- build_linux_c_compilertoolchain_ccxx_compilertoolchain_cxx
3 changes: 2 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,8 @@ osx_image: xcode6.4

env:
matrix:
- CONFIG=osx_
- CONFIG=osx_c_compilerclangcxx_compilerclangxx
- CONFIG=osx_c_compilertoolchain_ccxx_compilertoolchain_cxx

global:
# The BINSTAR_TOKEN secure variable. This is defined canonically in conda-forge.yml.
Expand Down
11 changes: 6 additions & 5 deletions conda-forge.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
travis:
secure:
BINSTAR_TOKEN: YTsRkQiZb9hIVy6ZTeSWvWoaOLgcaPVOOFj61C4ynXkJ/gN7QiH/oKLpEMtMGpU34U7NcFqVbMChbCQvMCIQmhzEH1ak3EXS4oPreDKClFWEfYwF7bRvRV/uBkfn4zD7kRL8NAMLXqmNrFzytQTCNexb9+rmlYdy8P9dBHu0nTHumFN4npfxihIg01MrD+latfhcwDwdARx9AVr9qCRjCY4dKMelyM6o1Ja2e9qY6Hxf0xq9pxpR6LIyXk7MdBLli4Btc9EV0FjQevc7nFazX7mjzOyKtFnUD/BSy0KoZZ6Nx9Sk8OrhuQeUkOy6KUM/0Oat3GhWIhoIuIZSSd3eTCk1hH+dtByYcuklLcsS5T9uQQb3x0NXIWhJKGnqiRAU7vK3BvnZJtmRfkX/X136aiTqjwLTPVp7WOzfunsbq0V0jkgc/zj1NJ0lGoyap2SK1ZlTDpw5ffdcnThhfTtBQiMO65Ry2uyyNO8+SsBKIZZj+6Gr7Eqd5zefvzwfxfF/E+CwFkK5Z8hIL3JIm7SAJZCfQZXPLhZEgTArrcqz5pd//ZF9DRT5Rlqt1Rgz0fm2aqJXFVP0jRrbKH5f3ecgpMRU52bJ4QsZdBGjesrp5PSfMzZcqGZjsFEtbjZk033OO6ptGVRB7+kxu1mafr+WUMSEXEgSRohbaAi85pJwhs0=
appveyor:
secure:
BINSTAR_TOKEN: tumuXLL8PU75WMnRDemRy02ruEq2RpNxeK3dz0MjFssnosPm2v4EFjfNB4PTotA1
secure: {BINSTAR_TOKEN: tumuXLL8PU75WMnRDemRy02ruEq2RpNxeK3dz0MjFssnosPm2v4EFjfNB4PTotA1}
compiler_stack: comp7
max_py_ver: '37'
max_r_ver: '35'
travis:
secure: {BINSTAR_TOKEN: YTsRkQiZb9hIVy6ZTeSWvWoaOLgcaPVOOFj61C4ynXkJ/gN7QiH/oKLpEMtMGpU34U7NcFqVbMChbCQvMCIQmhzEH1ak3EXS4oPreDKClFWEfYwF7bRvRV/uBkfn4zD7kRL8NAMLXqmNrFzytQTCNexb9+rmlYdy8P9dBHu0nTHumFN4npfxihIg01MrD+latfhcwDwdARx9AVr9qCRjCY4dKMelyM6o1Ja2e9qY6Hxf0xq9pxpR6LIyXk7MdBLli4Btc9EV0FjQevc7nFazX7mjzOyKtFnUD/BSy0KoZZ6Nx9Sk8OrhuQeUkOy6KUM/0Oat3GhWIhoIuIZSSd3eTCk1hH+dtByYcuklLcsS5T9uQQb3x0NXIWhJKGnqiRAU7vK3BvnZJtmRfkX/X136aiTqjwLTPVp7WOzfunsbq0V0jkgc/zj1NJ0lGoyap2SK1ZlTDpw5ffdcnThhfTtBQiMO65Ry2uyyNO8+SsBKIZZj+6Gr7Eqd5zefvzwfxfF/E+CwFkK5Z8hIL3JIm7SAJZCfQZXPLhZEgTArrcqz5pd//ZF9DRT5Rlqt1Rgz0fm2aqJXFVP0jRrbKH5f3ecgpMRU52bJ4QsZdBGjesrp5PSfMzZcqGZjsFEtbjZk033OO6ptGVRB7+kxu1mafr+WUMSEXEgSRohbaAi85pJwhs0=}
40 changes: 37 additions & 3 deletions recipe/build.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,47 @@ if [ $(uname) = Darwin ] ; then
export CXXFLAGS="-arch $OSX_ARCH -stdlib=libc++ -std=c++11"
export RUSTFLAGS="-C link-args=-Wl,-rpath,$PREFIX/lib"

# Well, I have no idea what's going on here. But if we don't run these
# programs like this, the build fails with errors about not being able to
# find "cc" and "ar". ???? -- PKGW 2018 Sep 16.
# HACK: Well, I have no idea what's going on here. But if we don't run
# these programs like this, the build fails with errors about not being
# able to find the various developer tools:
#
# /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -sdk / -find clang 2> /dev/null
# cc: error: unable to find utility "clang", not a developer tool or in PATH
#
# Certain dependent libraries compile C code in ways that don't respect
# $CC, so to cover all the bases for all toolchains we need to invoke `cc`
# explicitly.
set +e
cc --help
$CC --help
$CXX --help
ar --help
set -e

# HACK: work around https://github.com/rust-lang/rust/issues/51838 .
# On Travis we currently use an old version of macOS that crashes
# when rustc tries to resize the stack of its main thread. By setting
# hard stack size ulimit to be smaller than Rust wants, we trigger code
# in rustc that launches the compiler in a thread, avoiding the crash.
ulimit -s 1024

# HACK: work around
# https://github.com/rust-lang/cargo/issues/2888#issuecomment-431049264 .
# To configure the build Cargo compiles and executes the Tectonic "build
# script", which in turn invokes pkg-config. But cargo runs the build
# script with DYLD_LIBRARY_PATH set, which causes pkg-config to fail: the
# environment variable causes the linker to try to link the system's
# libcups with conda-forge's libiconv, which is incompatible with the
# system version. As it happens, conda-forge's pkg-config is already a
# wrapper script, so we hack it to unset the variable. Fun times.
pc=$(which pkg-config)
cp $pc $pc.orig
cat <<EOF >$pc
#!/usr/bin/env bash
unset DYLD_LIBRARY_PATH
EOF
cat $pc.orig >>$pc
chmod +x $pc
else
export CFLAGS="-std=gnu99 $CFLAGS"
export RUSTFLAGS="-C link-args=-Wl,-rpath-link,$PREFIX/lib"
Expand Down
7 changes: 3 additions & 4 deletions recipe/meta.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -16,12 +16,11 @@ source:
- msvc-M_PI.patch # temporary for 0.1.10; should be removed on next release

build:
number: 0
number: 1000

requirements:
build:
- rust # [not osx]
- rust 1.26 # [osx] -- later versions overflow their stack on Travis :-(
- rust
- {{posix}}patch # [win]
- {{native}}pkg-config
- {{ compiler('c') }} # [not win]
Expand Down Expand Up @@ -60,7 +59,7 @@ about:
license_family: MIT
license_file: LICENSE
summary: 'A modernized, complete, standalone TeX/LaTeX engine.'
doc_url: https://tectonic-typesetting.github.io/en-US/learn.html
doc_url: https://tectonic-typesetting.github.io/learn.html
dev_url: https://github.com/tectonic-typesetting/tectonic/

extra:
Expand Down