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

[automake] conan ready v2 #12898

Closed

Conversation

jellespijker
Copy link
Contributor

Specify library name and version: automake/x.x.x

I took the liberty of defining a conf value: automake:aclocal, tools.automake:automake, tools.automake:compile, tools.automake:ar-lib which are paths to the binary m4 executable. I don't know if tools is a reserved namespace but it maid sense in my mind. Let me know if that should change.

Based on this template:
https://github.com/conan-io/conan-center-index/tree/master/docs/package_templates/autotools_package

Contribute to CURA-9575

  • I've read the guidelines for contributing.
  • I've followed the PEP8 style guides for Python code in the recipes.
  • I've used the latest Conan client version.
  • I've tried at least one configuration locally with the conan-center hook activated.

jellespijker and others added 12 commits September 5, 2022 15:04
Use modern Autotools toolchain and add buildenv_info

Simplified test_package No need to actually compile
something with this tool we simply need to know if it
runs.

The win_bash for the run in the test_package needs to be
set explicitly due to the conf not working properly in
the test_package see conan-io/conan#11975
subsystem isn't know at this time
Contributes to CURA-9595
Contributes to CURA-9575
Contributes to CURA-9575
Using some duck typing and inheritance to work around
GH issue conan-io/conan#11980

Contributes to CURA-9575
Contribute to CURA-9575
Contributes to CURA-8831
Wasn't used

Contributes to CURA-8831
@conan-center-bot

This comment has been minimized.

@conan-center-bot

This comment has been minimized.

@jellespijker
Copy link
Contributor Author

Current failure on Windows seems related to: conan-io/conan#11980 which has a proposed fix conan-io/conan#11981

autoreconf: running: C:\J\w\prod\BuildSingleReference\.conan\data\automake\1.16.4\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin\aclocal --force 
sh: line 1: C:JwprodBuildSingleReference.conandataautomake1.16.4__packagea8404b8c06cf45f85864f0afcaa5ac14ff3b3578binaclocal: command not found

Which is clearly a Windows Path not correctly formatted for the subsystem.

jellespijker added a commit to Ultimaker/conan-center-index that referenced this pull request Sep 14, 2022
Should be reverted once conan-io#12898
has been merged

Contribute to CURA-9628 and CURA-9575
jellespijker and others added 4 commits October 23, 2022 10:05
As described in conan-io#13490

Added a fixme note to the user_info entries, I also kept
these conf_info, Such that downstream projects which relied
on the `user_info` can migrate to `conf_info`.
@conan-center-bot

This comment has been minimized.

@jellespijker
Copy link
Contributor Author

Does anybody has any suggestions how to fix:

----Running------
> C:\J\w\prod\BuildSingleReference\s\c5811a\1\bin\msys64\usr\bin\bash.exe --login -c ^"cd \^"/c/j/w/prod/buildsinglereference/conan-center-index/recipes/automake/all/test_v1_package/build/12cc9b982277429c7047b05d3602252f4c74a542\^" ^&^& PATH=\^"/c/j/w/prod/buildsinglereference/s/c5811a/1/bin/msys64/usr/bin:/c/j/w/prod/buildsinglereference/.conan/data/automake/1.16.1/_/_/package/a8404b8c06cf45f85864f0afcaa5ac14ff3b3578/bin:/c/j/w/prod/buildsinglereference/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin:/c/j/w/prod/buildsinglereference/.conan/data/m4/1.4.19/_/_/package/0a420ff5c47119e668867cdb51baff0eca1fdb68/bin:$PATH\^" ^&^& /c/j/w/prod/buildsinglereference/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin/autoreconf -fiv ^"
-----------------
autoreconf: export WARNINGS=
autoreconf: Entering directory '.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: C:\J\w\prod\BuildSingleReference\.conan\data\automake\1.16.1\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin\aclocal --force 
sh: line 1: C:JwprodBuildSingleReference.conandataautomake1.16.1__packagea8404b8c06cf45f85864f0afcaa5ac14ff3b3578binaclocal: command not found
autoreconf: error: C:\J\w\prod\BuildSingleReference\.conan\data\automake\1.16.1\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin\aclocal failed with exit status: 127
ERROR: automake/1.16.1 (test package): Error in build() method, line 82
	self._build_autotools()
while calling '_build_autotools', line 70
	self.run("{} -fiv".format(os.environ["AUTORECONF"].replace("\\", "/")), win_bash=tools.os_info.is_windows)
	ConanException: Error 127 while executing /c/j/w/prod/buildsinglereference/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin/autoreconf -fiv

This error for the v1 test_package on Windows?

conan-center-bot pushed a commit that referenced this pull request Oct 24, 2022
* Added Conan v2 support

Based on this template:
https://github.com/conan-io/conan-center-index/tree/master/docs/package_templates/autotools_package

Contribute to CURA-9628

* catch ValueError instead of broad Exception catch

Contributes to CURA-9628

* Validating not needed in this recipe

Contributes to CURA-9628

* Clean-up various path references

Contributes to CURA-9628

* Use modern apple rpath fix

Contributes to CURA-9628

* Reapplied patches again

Contributes to CURA-9628

* convert Path to str before passing to unix_path

Contributes to CURA-9628

* Removed clang exception in generate

Contributes to CURA-9628

* Use user_info.ar_lib as a workaround

Should be reverted once #12898
has been merged

Contribute to CURA-9628 and CURA-9575

* disable multi os directory when compiling with apple-clang

Contributes to CURA-9628

* Use conf for AR variable

Contributes to CURA-9628

* Slight clean up

* Evaluate ar-lib path

* Update recipes/libffi/all/conanfile.py

Co-authored-by: SpaceIm <30052553+SpaceIm@users.noreply.github.com>

* Move DLL's to the bin directory

* Rename source folder to src

* Small fixes

* Fix renaming DLL's

* Make bin directory

* Be sure to set DISABLE_FFI_CALL properly

* Remove stuff AutotoolsToolchain should set

* Clean up compiler wrapper

* Move VirtualBuildEnv before MSVC settings

* Add missing generate method for toolchain

* Use provided compile wrapper and add missing defines

* Set build and host

* Add architecture flags

* Pass architecture flag to compiler wrapper

* Fix for Clang on Windows

* Use gnu-config

* Fix copy-paste

* Use cygwin triplet

* Use the VCVars generator

* Revert "Use cygwin triplet"

This reverts commit 0ef94c6.

* Revert "Use gnu-config"

This reverts commit 79d2f4e.

* Fix wrapper

* Define the assembler in the wrapper script

* Remove VCVars

* Use the toolchain's environment

* Fix Windows to use wrapper script

* Align with updated autotools template

* Always define FFI_BUILDING

* Don't define FFI_DEBUG

* Try patching version 3.2.1

* Revert "Try patching version 3.2.1"

This reverts commit f15d3e4.

* Drop version 3.2.1

This is no longer building and I don't know why.
It's also from 2014, so hopefully it's okay to drop.

* Clean up

Co-authored-by: Jelle Spijker <j.spijker@ultimaker.com>
Co-authored-by: j.spijker@ultimaker.com <jelle spijker>
Co-authored-by: SpaceIm <30052553+SpaceIm@users.noreply.github.com>
@stale
Copy link

stale bot commented Nov 22, 2022

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@stale stale bot added the stale label Nov 22, 2022
@paulharris
Copy link
Contributor

Are we waiting for something to progress this PR ?

@stale stale bot removed the stale label Nov 27, 2022
@paulharris
Copy link
Contributor

And with this branch, I can build automake, but I can't build the current libffi (there is a note in the commit that something should be reverted when this one is merged).

paulharris added a commit to paulharris/conan-center-index that referenced this pull request Nov 28, 2022
paulharris added a commit to paulharris/conan-center-index that referenced this pull request Nov 28, 2022
@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline

Failure in build 13 (070119f5e342e3cf4fabd2e18410ff0c3bbedd51):

  • automake/1.16.3@:
    Didn't run or was cancelled before finishing

  • automake/1.16.2@:
    Didn't run or was cancelled before finishing

  • automake/1.16.4@:
    Didn't run or was cancelled before finishing

  • automake/1.16.5@:
    CI failed to create some packages (All logs)

    Logs for packageID a8404b8c06cf45f85864f0afcaa5ac14ff3b3578:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=Visual Studio
    compiler.runtime=MT
    compiler.version=15
    os=Windows
    
    [...]
    automake/1.16.5: Already installed!
    automake/1.16.5: Appending PATH environment variable: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin
    automake/1.16.5: Defining AUTOMAKE_DATADIR environment variable: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res
    automake/1.16.5: Defining AUTOMAKE_LIBDIR environment variable: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16
    automake/1.16.5: Defining AUTOMAKE_PERLLIBDIR environment variable: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16
    automake/1.16.5: Defining ACLOCAL environment variable: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin\aclocal
    automake/1.16.5: Defining AUTOMAKE environment variable: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin\automake
    automake/1.16.5: Define path to `compile` binary in user_info as: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16\compile
    automake/1.16.5: Defining path to `compile` binary in configuration as `user.automake:compile` with value: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16\compile
    automake/1.16.5: Define path to ar_lib binary in user_info as: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16\ar-lib
    automake/1.16.5: Defining path to ar-lib binary in configuration as `user.automake:ar-lib` with value: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16\ar-lib
    automake/1.16.5: Define path to install_sh binary in user_info as: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16\install-sh
    automake/1.16.5: Defining path to install_sh binary in configuration as `user.automake:install-sh` with value: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\res\automake-1.16\install-sh
    automake/1.16.5 (test package): Applying build-requirement: msys2/cci.latest
    automake/1.16.5 (test package): Generator txt created conanbuildinfo.txt
    automake/1.16.5 (test package): Aggregating env generators
    automake/1.16.5 (test package): Generated conaninfo.txt
    automake/1.16.5 (test package): Generated graphinfo
    Using lockfile: 'C:\J\w\prod\BuildSingleReference@3\conan-center-index\recipes\automake\all\test_v1_package\build\12cc9b982277429c7047b05d3602252f4c74a542/conan.lock'
    Using cached profile from lockfile
    [HOOK - conan-center.py] pre_build(): [FPIC MANAGEMENT (KB-H007)] 'fPIC' option not found
    [HOOK - conan-center.py] pre_build(): [FPIC MANAGEMENT (KB-H007)] OK
    automake/1.16.5 (test package): Calling build()
    **********************************************************************
    ** Visual Studio 2017 Developer Command Prompt v15.9.50
    ** Copyright (c) 2017 Microsoft Corporation
    **********************************************************************
    [vcvarsall.bat] Environment initialized for: 'x64'
    automake/1.16.5 (test package): run_in_windows_bash: C:\J\w\prod\BuildSingleReference@3\s\9fc206\1\bin\msys64\usr\bin\bash.exe --login -c ^"cd \^"/c/j/w/prod/buildsinglereference@3/conan-center-index/recipes/automake/all/test_v1_package/build/12cc9b982277429c7047b05d3602252f4c74a542\^" ^&^& PATH=\^"/c/j/w/prod/buildsinglereference@3/s/9fc206/1/bin/msys64/usr/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/automake/1.16.5/_/_/package/a8404b8c06cf45f85864f0afcaa5ac14ff3b3578/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/m4/1.4.19/_/_/package/0a420ff5c47119e668867cdb51baff0eca1fdb68/bin:$PATH\^" ^&^& /c/j/w/prod/buildsinglereference@3/.conan/data/automake/1.16.5/_/_/package/a8404b8c06cf45f85864f0afcaa5ac14ff3b3578/res/automake-1.16/compile cl -nologo test_package_1.c -o script_test ^"
    
    ----Running------
    > C:\J\w\prod\BuildSingleReference@3\s\9fc206\1\bin\msys64\usr\bin\bash.exe --login -c ^"cd \^"/c/j/w/prod/buildsinglereference@3/conan-center-index/recipes/automake/all/test_v1_package/build/12cc9b982277429c7047b05d3602252f4c74a542\^" ^&^& PATH=\^"/c/j/w/prod/buildsinglereference@3/s/9fc206/1/bin/msys64/usr/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/automake/1.16.5/_/_/package/a8404b8c06cf45f85864f0afcaa5ac14ff3b3578/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/m4/1.4.19/_/_/package/0a420ff5c47119e668867cdb51baff0eca1fdb68/bin:$PATH\^" ^&^& /c/j/w/prod/buildsinglereference@3/.conan/data/automake/1.16.5/_/_/package/a8404b8c06cf45f85864f0afcaa5ac14ff3b3578/res/automake-1.16/compile cl -nologo test_package_1.c -o script_test ^"
    -----------------
    test_package_1.c
    
    automake/1.16.5 (test package): run_in_windows_bash: C:\J\w\prod\BuildSingleReference@3\s\9fc206\1\bin\msys64\usr\bin\bash.exe --login -c ^"cd \^"/c/j/w/prod/buildsinglereference@3/conan-center-index/recipes/automake/all/test_v1_package/build/12cc9b982277429c7047b05d3602252f4c74a542\^" ^&^& PATH=\^"/c/j/w/prod/buildsinglereference@3/s/9fc206/1/bin/msys64/usr/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/automake/1.16.5/_/_/package/a8404b8c06cf45f85864f0afcaa5ac14ff3b3578/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/m4/1.4.19/_/_/package/0a420ff5c47119e668867cdb51baff0eca1fdb68/bin:$PATH\^" ^&^& /c/j/w/prod/buildsinglereference@3/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin/autoreconf -fiv ^"
    
    ----Running------
    > C:\J\w\prod\BuildSingleReference@3\s\9fc206\1\bin\msys64\usr\bin\bash.exe --login -c ^"cd \^"/c/j/w/prod/buildsinglereference@3/conan-center-index/recipes/automake/all/test_v1_package/build/12cc9b982277429c7047b05d3602252f4c74a542\^" ^&^& PATH=\^"/c/j/w/prod/buildsinglereference@3/s/9fc206/1/bin/msys64/usr/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/automake/1.16.5/_/_/package/a8404b8c06cf45f85864f0afcaa5ac14ff3b3578/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin:/c/j/w/prod/buildsinglereference@3/.conan/data/m4/1.4.19/_/_/package/0a420ff5c47119e668867cdb51baff0eca1fdb68/bin:$PATH\^" ^&^& /c/j/w/prod/buildsinglereference@3/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin/autoreconf -fiv ^"
    -----------------
    autoreconf: export WARNINGS=
    autoreconf: Entering directory '.'
    autoreconf: configure.ac: not using Gettext
    autoreconf: running: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin\aclocal --force 
    sh: line 1: C:JwprodBuildSingleReference@3.conandataautomake1.16.5__packagea8404b8c06cf45f85864f0afcaa5ac14ff3b3578binaclocal: command not found
    autoreconf: error: C:\J\w\prod\BuildSingleReference@3\.conan\data\automake\1.16.5\_\_\package\a8404b8c06cf45f85864f0afcaa5ac14ff3b3578\bin\aclocal failed with exit status: 127
    ERROR: automake/1.16.5 (test package): Error in build() method, line 82
    	self._build_autotools()
    while calling '_build_autotools', line 70
    	self.run("{} -fiv".format(os.environ["AUTORECONF"].replace("\\", "/")), win_bash=tools.os_info.is_windows)
    	ConanException: Error 127 while executing /c/j/w/prod/buildsinglereference@3/.conan/data/autoconf/2.71/_/_/package/5ab84d6acfe1f23c4fae0ab88f26e3a396351ac9/bin/autoreconf -fiv
    
  • automake/1.16.1@:
    Didn't run or was cancelled before finishing


Note: To save resources, CI tries to finish as soon as an error is found. For this reason you might find that not all the references have been launched or not all the configurations for a given reference. Also, take into account that we cannot guarantee the order of execution as it depends on CI workload and workers availability.

@jellespijker
Copy link
Contributor Author

unfortunately I have very limited time to work on this. Please feel free to continue, discard or create a PR against our fork.

@paulharris
Copy link
Contributor

unfortunately I have very limited time to work on this. Please feel free to continue, discard or create a PR against our fork.

I completely understand, seems like it is just that path-escape thing that is the blocker (at the moment).

@stale
Copy link

stale bot commented Dec 31, 2022

This pull request has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

@jcar87
Copy link
Contributor

jcar87 commented Jan 25, 2023

I believe this is already addressed by #15245 -
Please let me know if anything else needs addressing!

@jcar87 jcar87 closed this Jan 25, 2023
@prince-chrismc
Copy link
Contributor

This was done in #15358 #15245 and more

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

5 participants