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

New package: wsjtx-2.0.1 #11802

Closed
wants to merge 3 commits into from
Closed

New package: wsjtx-2.0.1 #11802

wants to merge 3 commits into from

Conversation

acobaugh
Copy link
Contributor

Second attempt of #11790

Also had to restrict which archs this builds on. The last build errored out on the non-intel archs: https://travis-ci.org/void-linux/void-packages/builds/534087066

@jnbr
Copy link
Contributor

jnbr commented May 18, 2019

This is not about architectures but about cross-compiling.
You can most likely fix cross-builds by fixing what goes into makedepends and what goes into hostmakedepends.

@acobaugh
Copy link
Contributor Author

I'll have to dig into this, then. I'm on relatively slow DSL at home, so doing builds with multiple dependencies can be painful at times. Trying to find an elegant way to do this under docker so I can run the whole process on a DO droplet with a bit more horsepower and bandwidth...

@acobaugh
Copy link
Contributor Author

acobaugh commented May 27, 2019

There are 2 issues with cross-compiling this package:

  1. wsjtx is a cmake "uber" project, with hamlib and wsjtx itself as sub-projects. I patched the parent CMakeLists.txt to set --host on the hamlib ./configure command. The patch also passes the toolchain file down to the wsjtx subproject
  2. The toolchain file was overriding CMAKE_FIND_ROOT_PATH. This was preventing the wsjtx subproject from finding the previously built libraries. I've worked around this in a post_configure() by appending to the toolchain file a list(APPEND list item) to put the project's build directory back in.

I'm now running into an issue with qmake setting (I think) the wrong --isystem/-I, resulting in this error:

[ 69%] Building CXX object CMakeFiles/wsjt_qtmm.dir/Audio/BWFFile.cpp.o
In file included from /usr/aarch64-linux-gnu/usr/include/c++/8.3.0/ext/string_conversions.h:41,
                 from /usr/aarch64-linux-gnu/usr/include/c++/8.3.0/bits/basic_string.h:6400,
                 from /usr/aarch64-linux-gnu/usr/include/c++/8.3.0/string:52,
                 from /usr/aarch64-linux-gnu/usr/include/c++/8.3.0/stdexcept:39,
                 from /usr/aarch64-linux-gnu/usr/include/c++/8.3.0/array:39,
                 from /builddir/wsjtx-2.0.1/build/wsjtx-prefix/src/wsjtx/Audio/BWFFile.hpp:4,
                 from /builddir/wsjtx-2.0.1/build/wsjtx-prefix/src/wsjtx/Audio/BWFFile.cpp:1:
/usr/aarch64-linux-gnu/usr/include/c++/8.3.0/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
 #include_next <stdlib.h>
               ^~~~~~~~~~

I'm unsure of how to fix this latest error, or even if my other fixes are "kosher" w.r.t. good packaging practices. I've grep'd through srcpkgs and I can't find any other packages that run into this issue.

@jnbr
Copy link
Contributor

jnbr commented May 28, 2019

I think your fixes are ok so far, but you might as well just set something like
nocross="nested build systems" as those are always hard to get right and in addition cmake and qmake aren't the best systems when it comes to cross building (at least in void).

@acobaugh acobaugh force-pushed the wsjtx branch 2 times, most recently from 55a960b to 0c6ad9d Compare May 30, 2019 05:23
@acobaugh acobaugh changed the title New package: wsjtx New package: wsjtx-2.0.1 May 30, 2019
@travankor
Copy link
Contributor

#14170

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Sep 15, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants