-
Notifications
You must be signed in to change notification settings - Fork 612
Wizard recipe: MAiNGO-v0.7.2 #7812
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
Changes from 3 commits
30f5978
0b6de39
ab5ebfa
62f6a22
8f68f5d
3019238
f505b6c
353fc83
da75b01
418220e
2580e90
d4c468c
d56546f
ae9f458
a674d8c
8c2ce78
2a39e5a
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change | ||
---|---|---|---|---|
@@ -0,0 +1,66 @@ | ||||
# Note that this script can accept some limited command-line arguments, run | ||||
# `julia build_tarballs.jl --help` to see a usage message. | ||||
using BinaryBuilder, Pkg | ||||
|
||||
name = "MAiNGO" | ||||
version = v"0.7.2" | ||||
|
||||
# Collection of sources required to complete build | ||||
sources = [ | ||||
GitSource("https://git.rwth-aachen.de/avt-svt/public/maingo.git", "252733413a29dbe5b84a4cdaf53e60e9934f372f"), | ||||
] | ||||
|
||||
# Bash recipe for building across all platforms | ||||
script = raw""" | ||||
cd $WORKSPACE/srcdir | ||||
cd maingo/ | ||||
git remote set-url origin https://git.rwth-aachen.de/avt-svt/public/maingo.git | ||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Why? Isn't this already the case?
Suggested change
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I ran into this problem before, at least in my tests locally the git remote is changed for caching. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, in our tests, this did not work because of caching. For now we would leave this in. |
||||
mkdir build | ||||
cd build | ||||
git submodule init | ||||
git submodule update -j 1 | ||||
if [[ "${target}" == x86_64-apple-darwin* ]]; then | ||||
export MACOSX_DEPLOYMENT_TARGET=10.15 | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
export CXXFLAGS="-mmacosx-version-min=10.15" | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
fi | ||||
cmake -DCMAKE_INSTALL_PREFIX=${prefix} -DCMAKE_TOOLCHAIN_FILE=${CMAKE_TARGET_TOOLCHAIN} -DCMAKE_BUILD_TYPE=Release -DMAiNGO_build_standalone=True -DMAiNGO_build_shared_c_api=True -DMAiNGO_build_parser=True -DMAiNGO_use_cplex=False -DMAiNGO_use_melon=False .. | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
cmake --build . --config Release --parallel ${nproc} > make_out.txt | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
mkdir -p ${libdir} | ||||
mkdir -p ${bindir} | ||||
find . -type f -name "*maingo-c-api.*" ! -name "*.cpp*" -exec cp '{}' ${libdir}/ \; | ||||
find . -type f -name "MAiNGO*" ! -name "*.cpp*" -exec cp '{}' ${bindir}/ \; | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
install_license ../LICENSE | ||||
exit | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
""" | ||||
|
||||
# These are the platforms we will build for by default, unless further | ||||
# platforms are passed in on the command line | ||||
|
||||
|
||||
#Auditor complains about avx1. | ||||
#Without march the Auditor detects avx2 | ||||
#but with march="avx2" avx512 is detected, so we build without march | ||||
#We expand only to gfortan 4 and 5 (others seem not to have std::variant) | ||||
#MacOS is in principle supported but requires newer SDK | ||||
#see https://github.com/JuliaPackaging/BinaryBuilder.jl/issues/1263 (wee need std::shared_ptr and std::weak_ptr with array support that needs XCode 12.0) | ||||
#FreeBsd builds only with gcc, that platform has not yet been sufficiently tested for inclusion. | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
platforms = [ | ||||
Platform("x86_64", "linux", libgfortran_version=v"4"), | ||||
Platform("x86_64", "linux", libgfortran_version=v"5"), | ||||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. No There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We expand only to gfortan 4 and 5 (3 seems not to have std::variant) |
||||
Platform("x86_64", "Windows", libgfortran_version=v"4"), | ||||
Platform("x86_64", "Windows", libgfortran_version=v"5")] | ||||
platforms = expand_cxxstring_abis(platforms) | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
|
||||
# The products that we will ensure are always built | ||||
products = [ | ||||
LibraryProduct("libmaingo-c-api", :libmaingo_c_api), | ||||
ExecutableProduct("MAiNGOcpp", :MAiNGOcpp), | ||||
ExecutableProduct("MAiNGO", :MAiNGO) | ||||
] | ||||
|
||||
# Dependencies that must be installed before this package can be built | ||||
dependencies = Dependency[ | ||||
MAiNGO-github marked this conversation as resolved.
Show resolved
Hide resolved
|
||||
] | ||||
|
||||
# Build the tarballs, and possibly a `build.jl` as well. | ||||
build_tarballs(ARGS, name, version, sources, script, platforms, products, dependencies; julia_compat="1.6", preferred_gcc_version = v"9") |
Uh oh!
There was an error while loading. Please reload this page.