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

gfortran: revive and redesign deprecated recipe #23334

Draft
wants to merge 7 commits into
base: master
Choose a base branch
from

Conversation

valgur
Copy link
Contributor

@valgur valgur commented Apr 2, 2024

This PR revives the gfortran recipe by adapting the GCC recipe from #21193 to focus solely on GFortran.

There is currently no usable Fortran compiler available on CCI, which is limiting for quite a few numerics libraries.

I don't think melding GFortran with the broader GCC recipe was a good idea. The additional C and C++ compilers plus the rest of the toolchain provided by the recipe are not required for Fortran compilation and they are only very likely to cause issues by accidentally overriding the C/C++ compiler. Plus, it makes for a slightly smaller package to download as well.

@conan-center-bot conan-center-bot added Failed Missing dependencies Build failed due missing dependencies in Conan Center labels Apr 2, 2024
@conan-center-bot

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Apr 2, 2024

Hooks produced the following warnings for commit 823b7d8
gfortran/13.2.0@#d0d1da95198c72c15609448633b0304e
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Running objdump on './lib/libgcc_s.so' failed. Is the environment variable OBJDUMP correctly configured?
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './libexec/gcc/x86_64-pc-linux-gnu/13.2.0/liblto_plugin.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libatomic.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libgomp.so' links to system library 'pthread' but it is not in cpp_info.system_libs.

@conan-center-bot

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Apr 2, 2024

Hooks produced the following warnings for commit 5c198df
gfortran/13.2.0@#44a53090003ee1933a261585ae2d673f
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Running objdump on './lib/libgcc_s.so' failed. Is the environment variable OBJDUMP correctly configured?
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libatomic.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libgomp.so' links to system library 'pthread' but it is not in cpp_info.system_libs.

@valgur
Copy link
Contributor Author

valgur commented Apr 2, 2024

@uilianries Can you help with the missing binutils binary, please?

@conan-center-bot

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Apr 5, 2024

Hooks produced the following warnings for commit bd11ab2
gfortran/13.2.0@#44a53090003ee1933a261585ae2d673f
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Running objdump on './lib/libgcc_s.so' failed. Is the environment variable OBJDUMP correctly configured?
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libatomic.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libgomp.so' links to system library 'pthread' but it is not in cpp_info.system_libs.

@conan-center-bot conan-center-bot removed the Missing dependencies Build failed due missing dependencies in Conan Center label Apr 20, 2024
@conan-center-bot

This comment has been minimized.

Copy link
Contributor

Hooks produced the following warnings for commit 2922932
gfortran/13.2.0@#d9c1fad5d68416c619ed6c16a32b14cc
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Running objdump on './lib/libgcc_s.so' failed. Is the environment variable OBJDUMP correctly configured?
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libgomp.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libatomic.so' links to system library 'pthread' but it is not in cpp_info.system_libs.

@conan-center-bot

This comment has been minimized.

Copy link
Contributor

Hooks produced the following warnings for commit ff0fdd7
gfortran/13.2.0@#bc67e66269729875c40673dae46dc637
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Running objdump on './lib/libgcc_s.so' failed. Is the environment variable OBJDUMP correctly configured?
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libgomp.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libatomic.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './libexec/gcc/x86_64-pc-linux-gnu/13.2.0/liblto_plugin.so' links to system library 'pthread' but it is not in cpp_info.system_libs.

@conan-center-bot

This comment has been minimized.

Copy link
Contributor

Hooks produced the following warnings for commit c07574a
gfortran/13.2.0@#d80fb7d0d309d1558bdfad758fa91056
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Running objdump on './lib/libgcc_s.so' failed. Is the environment variable OBJDUMP correctly configured?
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libgomp.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './lib/libatomic.so' links to system library 'pthread' but it is not in cpp_info.system_libs.
post_package(): WARN: [MISSING SYSTEM LIBS (KB-H043)] Library './libexec/gcc/x86_64-pc-linux-gnu/13.2.0/liblto_plugin.so' links to system library 'pthread' but it is not in cpp_info.system_libs.

@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline ❌

Failure in build 7 (c07574a9c921ac044175f90b8e7c9cdc0aa8ae3e):

  • gfortran/13.2.0:
    CI failed to create some packages (All logs)

    Logs for packageID 1bf8c63bcf9bab7d01987a33fef78226a330d347:
    [settings]
    arch=armv8
    build_type=Release
    compiler=apple-clang
    compiler.libcxx=libc++
    compiler.version=13.0
    os=Macos
    
    [...]
                     from /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:26:
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c: In function 'date_and_time':
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:175:39: warning: '%04d' directive output may be truncated writing between 4 and 11 bytes into a region of size 9 [-Wformat-truncation=]
      175 |         snprintf (date, DATE_LEN + 1, "%04d%02d%02d",
          |                                       ^~~~~~~~~~~~~~
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:175:40: note: format string is defined here
      175 |         snprintf (date, DATE_LEN + 1, "%04d%02d%02d",
          |                                        ^~~~
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:175:39: note: directive argument in the range [-2147481748, 2147483647]
      175 |         snprintf (date, DATE_LEN + 1, "%04d%02d%02d",
          |                                       ^~~~~~~~~~~~~~
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:175:39: note: directive argument in the range [-2147483647, 2147483647]
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:175:9: note: '__builtin_snprintf' output between 9 and 34 bytes into a destination of size 9
      175 |         snprintf (date, DATE_LEN + 1, "%04d%02d%02d",
          |         ^~~~~~~~
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:182:39: warning: '%+03d' directive output may be truncated writing between 3 and 9 bytes into a region of size 6 [-Wformat-truncation=]
      182 |         snprintf (zone, ZONE_LEN + 1, "%+03d%02d",
          |                                       ^~~~~~~~~~~
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:182:40: note: format string is defined here
      182 |         snprintf (zone, ZONE_LEN + 1, "%+03d%02d",
          |                                        ^~~~~
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:182:39: note: directive argument in the range [-35791394, 35791394]
      182 |         snprintf (zone, ZONE_LEN + 1, "%+03d%02d",
          |                                       ^~~~~~~~~~~
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:182:39: note: directive argument in the range [0, 59]
    /Users/jenkins/workspace/prod-v1/bsr/37969/bfdfa/.conan/data/gfortran/13.2.0/_/_/build/1bf8c63bcf9bab7d01987a33fef78226a330d347/src/libgfortran/intrinsics/date_and_time.c:182:9: note: '__builtin_snprintf' output between 6 and 12 bytes into a destination of size 6
      182 |         snprintf (zone, ZONE_LEN + 1, "%+03d%02d",
          |         ^~~~~~~~
    Makefile:915: warning: overriding commands for target `all-multi'
    Makefile:906: warning: ignoring old commands for target `all-multi'
    libtool: install: warning: remember to run `libtool --finish //lib/'
    Makefile:915: warning: overriding commands for target `all-multi'
    Makefile:906: warning: ignoring old commands for target `all-multi'
    Makefile:915: warning: overriding commands for target `all-multi'
    Makefile:906: warning: ignoring old commands for target `all-multi'
    libtool: install: warning: remember to run `libtool --finish //lib/gcc/aarch64-apple-darwin23.4.0/13.2.0/plugin'
    Makefile:915: warning: overriding commands for target `all-multi'
    Makefile:906: warning: ignoring old commands for target `all-multi'
    libtool: install: warning: remember to run `libtool --finish //lib'
    libtool: install: warning: remember to run `libtool --finish //lib'
    libtool: install: warning: remember to run `libtool --finish //lib'
    libtool: install: warning: remember to run `libtool --finish //lib'
    libtool: install: warning: remember to run `libtool --finish //lib/gcc/aarch64-apple-darwin23.4.0/13.2.0'
    libtool: install: warning: remember to run `libtool --finish //lib'
    WARN: *** Conan 1 is legacy and on a deprecation path ***
    WARN: *** Please upgrade to Conan 2 ***
    [HOOK - conan-center.py] post_package(): WARN: [SHORT_PATHS USAGE (KB-H066)] The file './lib/gcc/aarch64-apple-darwin23.4.0/13.2.0/plugin/include/config/aarch64/aarch64-fusion-pairs.def' has a very long path and may exceed Windows max path length. Add 'short_paths = True' in your recipe.
    [HOOK - conan-center.py] post_package_info(): ERROR: [LIBRARY DOES NOT EXIST (KB-H054)] Component gfortran::libgcc_s library 'gcc_s' is listed in the recipe, but not found installed at self.cpp_info.libdirs. Make sure you compiled the library correctly. If so, then the library name should probably be fixed. Otherwise, then the component should be removed. (https://github.com/conan-io/conan-center-index/blob/master/docs/error_knowledge_base.md#KB-H054-LIBRARY-DOES-NOT-EXIST) 
    ERROR: 
    	ConanException: [HOOK - conan-center.py] post_package_info(): Some checks failed running the hook, check the output
    

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.


Conan v2 pipeline ❌

Note: Conan v2 builds are now mandatory. Please read our discussion about it.

The v2 pipeline failed. Please, review the errors and note this is required for pull requests to be merged. In case this recipe is still not ported to Conan 2.x, please, ping @conan-io/barbarians on the PR and we will help you.

See details:

Failure in build 7 (c07574a9c921ac044175f90b8e7c9cdc0aa8ae3e):

  • gfortran/13.2.0:
    CI failed to create some packages (All logs)

    Logs for packageID e3139c7594564aba26980136f0eaab7d0f22dbe9:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=apple-clang
    compiler.cppstd=17
    compiler.libcxx=libc++
    compiler.version=13
    os=Macos
    [options]
    */*:shared=False
    
    [...]
    checking whether snprintf is declared... config.status: executing default commands
    yes
    checking whether vsnprintf is declared... yes
    checking whether calloc is declared... yes
    checking whether getenv is declared... yes
    checking whether getopt is declared... yes
    checking whether malloc is declared... yes
    checking whether realloc is declared... yes
    checking whether strtol is declared... yes
    checking whether strtoul is declared... yes
    checking whether strtoll is declared... yes
    checking whether strtoull is declared... yes
    checking whether strverscmp is declared... no
    checking whether strnlen is declared... yes
    checking whether canonicalize_file_name must be declared... yes
    checking for stdlib.h... (cached) yes
    checking for unistd.h... (cached) yes
    checking for sys/param.h... (cached) yes
    checking for getpagesize... (cached) yes
    checking for working mmap... no
    checking for working strncmp... yes
    configure: updating cache ./config.cache
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating testsuite/Makefile
    config.status: creating config.h
    config.status: executing default commands
    no
    checking for shared library run path origin... done
    checking for iconv... (cached) no
    checking for CET support... no
    checking valgrind.h usability... no
    checking valgrind.h presence... no
    checking for valgrind.h... no
    checking for VALGRIND_DISCARD in <valgrind/memcheck.h>... no
    checking for VALGRIND_DISCARD in <memcheck.h>... no
    configure: updating cache ./config.cache
    configure: creating ./config.status
    config.status: creating Makefile
    config.status: creating config.h
    config.status: executing depdir commands
    mkdir .deps
    make: *** [all] Error 2
    
    gfortran/13.2.0: ERROR: 
    Package 'e3139c7594564aba26980136f0eaab7d0f22dbe9' build failed
    gfortran/13.2.0: WARN: Build folder /Users/jenkins/workspace/prod-v2/bsr/34039/fdaaf/p/b/gfortd8280ec876ee2/b/build-release
    ERROR: gfortran/13.2.0: Error in build() method, line 113
    	autotools.make()
    	ConanException: Error 2 while executing
    

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.

Copy link
Contributor

github-actions bot commented May 5, 2024

Hooks produced the following warnings for commit c07574a
gfortran/13.2.0@#d80fb7d0d309d1558bdfad758fa91056
post_package(): WARN: [SHORT_PATHS USAGE (KB-H066)] The file './lib/gcc/aarch64-apple-darwin23.4.0/13.2.0/plugin/include/config/aarch64/aarch64-fusion-pairs.def' has a very long path and may exceed Windows max path length. Add 'short_paths = True' in your recipe.

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

Successfully merging this pull request may close these issues.

2 participants