Skip to content
This repository was archived by the owner on Aug 16, 2023. It is now read-only.

Add FreeBSD CI #145

Merged
merged 2 commits into from
Dec 29, 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
16 changes: 16 additions & 0 deletions .cirrus.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
freebsd_instance:
image: freebsd-12-0-release-amd64
freebsd_test_task:
env:
JULIA_VERSION: "1.0"
install_script:
- pkg install -y curl
- mkdir -p ~/julia
- curl -s -L --retry 7 "https://julialang-s3.julialang.org/bin/freebsd/x64/${JULIA_VERSION}/julia-${JULIA_VERSION}-latest-freebsd-x86_64.tar.gz" | tar -C ~/julia -x -z --strip-components=1 -f -
- ln -s "${HOME}/julia/bin/julia" /usr/local/bin/julia
- julia --color=yes -e "using InteractiveUtils; versioninfo()"
build_script:
- julia --color=yes -e "using Pkg; Pkg.add(PackageSpec(name=\"BinaryProvider\", path=pwd()))"
- julia --color=yes -e "using Pkg; Pkg.build(\"BinaryProvider\")"
test_script:
- julia --color=yes -e "using Pkg; Pkg.test(\"BinaryProvider\")"
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,8 @@

[![Appveyor Status](https://ci.appveyor.com/api/projects/status/0sbp28iie07c5dn3/branch/master?svg=true)](https://ci.appveyor.com/project/staticfloat/binaryprovider-jl-fu5p5/branch/master)

[![Cirrus Status](https://api.cirrus-ci.com/github/JuliaPackaging/BinaryProvider.jl.svg)](https://cirrus-ci.com/github/JuliaPackaging/BinaryProvider.jl)

[![codecov.io](http://codecov.io/github/JuliaPackaging/BinaryProvider.jl/coverage.svg?branch=master)](http://codecov.io/github/JuliaPackaging/BinaryProvider.jl?branch=master)

## Basic concepts
Expand Down Expand Up @@ -32,4 +34,4 @@ To actually generate the tarballs that are installed by this package, check out

* This package contains a `run(::Cmd)` wrapper class named `OutputCollector` that captures the output of shell commands, and in particular, captures the `stdout` and `stderr` streams separately, colorizing, buffering and timestamping appropriately to provide seamless printing of shell output in a consistent and intuitive way. Critically, it also allows for saving of the captured streams to log files, a very useful feature for [`BinaryBuilder.jl`](https://github.com/JuliaPackaging/BinaryBuilder.jl), which makes extensive use of this class, however all commands run by `BinaryProvider.jl` also use this same mechanism to provide coloring of `stderr`.

* When providing `ExecutableProduct`s to a client package, `BinaryProvider` will automatically append Julia's private library directory to `LD_LIBRARY_PATH` on Linux, and `DYLD_LIBRARY_PATH` on macOS. This is due to the fact that the compiled binaries may be dependent on libraries such as `libgfortran`, which ship with Julia and must be found by the system linker or else the binaries will not function. If you wish to use the binaries outside of Julia, you may need to override those environment variables in a similar fashion; see the generated `deps.jl` file for the `check_deps()` function where the precise overriding values can be found.
* When providing `ExecutableProduct`s to a client package, `BinaryProvider` will automatically append Julia's private library directory to `LD_LIBRARY_PATH` on Linux, and `DYLD_LIBRARY_PATH` on macOS. This is due to the fact that the compiled binaries may be dependent on libraries such as `libgfortran`, which ship with Julia and must be found by the system linker or else the binaries will not function. If you wish to use the binaries outside of Julia, you may need to override those environment variables in a similar fashion; see the generated `deps.jl` file for the `check_deps()` function where the precise overriding values can be found.
4 changes: 2 additions & 2 deletions test/runtests.jl
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ end

# Next, test reading the output of a pipeline()
grepline = pipeline(
sh(`-c 'printf "Hello\nWorld\nJulia\n"'`),
sh(`-c 'while read line; do case $line in *ul*) echo $line; esac; done'`)
sh(`'printf "Hello\nWorld\nJulia\n"'`),
sh(`'while read line; do case $line in *ul*) echo $line; esac; done'`)
)
oc = OutputCollector(grepline)

Expand Down