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

add cif_api #3375

Merged
merged 9 commits into from
Jul 27, 2021
Merged

add cif_api #3375

merged 9 commits into from
Jul 27, 2021

Conversation

Crghilardi
Copy link
Contributor

@Crghilardi Crghilardi commented Jul 24, 2021

This PR adds a build_tarball.jl for cif_api.

This is what comes out of the wizard for me on a x86_64-mingw-* platform, *-linux-* still needs some tinkering but I wanted to see how the other platforms do as well.

Closes #2680

@giordano
Copy link
Member

Ugh, looks like CPPFLAGS as environment variable doesn't work as expected? That's really weird

@Crghilardi
Copy link
Contributor Author

Any ideas on why the cxx03 versions of everything are failing? I searched the repo for every keyword I could think of and it doesn't look like it requires some fixed standard?

@giordano
Copy link
Member

Any ideas on why the cxx03 versions of everything are failing? I searched the repo for every keyword I could think of and it doesn't look like it requires some fixed standard?

My hunch is that it doesn't like GCC 4: when we don't specify the preferred GCC version, cxx03 uses GCC 4, cxx11 GCC 5. But I didn't try to build locally to see what's going on. To verify my hypothesis you can add preferred_gcc_version=v"5" to build_tarballs()

@Crghilardi
Copy link
Contributor Author

Crghilardi commented Jul 26, 2021

Some of the cxx03 work now, but some of the platforms that were working are broken. It's like squeezing a balloon

EDIT: was just missing a dollar sign lol

@Crghilardi
Copy link
Contributor Author

Digging into the config.log for i686-linux-* I saw a number of undefined reference issues such as:

configure:13419: result: no
configure:13426: trying again with -licuio -licuio -licui18n -L/workspace/destdir/lib -licuuc -licudata
configure:13430: checking for u_fopen_69
configure:13430: cc -o conftest -g -O2  -I/workspace/destdir/include -I/workspace/destdir/include   conftest.c -licuio -licuio -licui18n -L/workspace/destdir/lib -licuu>
/workspace/destdir/lib/libicui18n.so: undefined reference to `__divmoddi4@GCC_7.0.0'
collect2: error: ld returned 1 exit status
configure:13430: $? = 1
configure: failed program was:

It sounds like __divmoddi4 was added in GCC 7, and is only used in i686?

@giordano
Copy link
Member

Can you try building with GCC 7? The weird thing is that HarfBuzz_ICU was built with GCC 5:

build_tarballs(ARGS, name, version, sources, script, platforms, products, dependencies; preferred_gcc_version=v"5", julia_compat="1.6")

@Crghilardi
Copy link
Contributor Author

Bumping gcc did fix it for i686-linux-*, see latest commit f1b3f1d.

The remaining *-minGW-* failures seem to all be on the custom install scripts. I don't have a solution for that yet, still thinking

@Crghilardi Crghilardi marked this pull request as ready for review July 27, 2021 00:45
@giordano
Copy link
Member

giordano commented Jul 27, 2021

"Good" news: rebuilding HarfBuzz_ICU for i686-linux-gnu with GCC 5 doesn't work anymore. Why knows how it worked before 😕 Well, I'm going to merge this now

Edit: ugh, no, I was checking out an old version of BinaryBuilderBase. So now I'm back to "how HarfBuzz_ICU works?!?!"

@giordano giordano merged commit 3b85c4a into JuliaPackaging:master Jul 27, 2021
@Crghilardi Crghilardi deleted the add-cif-api branch July 28, 2021 02:07
simeonschaub pushed a commit to simeonschaub/Yggdrasil that referenced this pull request Feb 23, 2022
* initial commit cif_api

* add c++ CFLAGS, add configure option to not build docs

* switch to LibraryProduct instead of ExecutableProduct

* add CPPFLAGS to help musl builds find sqlite3.h

* apply review changes

* move CPPFLAGS back to configure statement, add minimum of gcc v5

* switch CPPFLAGS back to export environment variable but with missing $ sign for exansion

* bump gcc version to 7 to make i686 work

* add patch for mingw install issues
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.

Build cif_api
2 participants