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

[Mold] Use the official libexecdir now that the CCI hooks allow it #15068

Merged

Conversation

ericriff
Copy link
Contributor

@ericriff ericriff commented Jan 2, 2023

Follow up to #13666

mold wants to install a symlink in packagefolder/libexec, but this folder is forbidden by the CCI hooks, particularly by KB-H013. The PR linked above patched the mold sources to make this symlink get installed somewhere else, which is not ideal since this path is explicitly mentioned on the docs.
@prince-chrismc suggested patching the hooks instead so this rule doesn't get enforced on mold. Now that conan-io/hooks#464 has been merged, I'm removing the patch on the mold recipe and making sure the symlink gets installed on the proper directory.

Thanks @prince-chrismc once again for the suggestion.

@@ -64,6 +61,7 @@ def generate(self):
tc.variables["MOLD_USE_MIMALLOC"] = self.options.with_mimalloc
tc.variables["MOLD_USE_SYSTEM_MIMALLOC"] = True
tc.variables["MOLD_USE_SYSTEM_TBB"] = True
tc.variables["CMAKE_INSTALL_LIBEXECDIR"] = "libexec"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Otherwise this defaults to bin

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I wonder if the cmake layout of helper are overriding this 🤔

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I asked the Conan team and @jcar87 said this should not be any reason of concern, so we are good :)

@ericriff
Copy link
Contributor Author

ericriff commented Jan 2, 2023

BTW this problem with the test package and the generators still persist for me. Can one of the experts take a look? 🙏
#13666 (comment)

In that comment I mention generate() doesn't get called, which is not exactly true. It does get called but the files are not created?

@conan-center-bot

This comment has been minimized.

@conan-center-bot
Copy link
Collaborator

Conan v1 pipeline

All green in build 3 (7260c49e7020931ddb07f2e04941f6bb5711a240):

  • mold/1.5.1@:
    All packages built successfully! (All logs)

  • mold/1.4.2@:
    All packages built successfully! (All logs)

  • mold/1.7.1@:
    All packages built successfully! (All logs)

  • mold/1.8.0@:
    All packages built successfully! (All logs)


Conan v2 pipeline (informative, not required for merge)

Failure in build 3 (7260c49e7020931ddb07f2e04941f6bb5711a240):

  • mold/1.5.1@:
    CI failed to create some packages (All logs)

    Logs for packageID null:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=gcc
    compiler.libcxx=libstdc++11
    compiler.version=11
    os=Linux
    
    ********************************************************************************
    conan install --require=mold/1.5.1@#f061bdff508c73436225ec77d53faa98 --build=mold/1.5.1 -pr:h /home/conan/w/prod-v2/BuildSingleReference/9233/f6872a31-2b51-4df0-a356-101b28fd751f/profile_linux_11_libstdcpp11_gcc_release_64..txt -c:h tools.system.package_manager:mode=install -c:h tools.system.package_manager:sudo=True -pr:b /home/conan/w/prod-v2/BuildSingleReference/9233/f6872a31-2b51-4df0-a356-101b28fd751f/profile_linux_11_libstdcpp11_gcc_release_64..txt -c:b tools.system.package_manager:mode=install -c:b tools.system.package_manager:sudo=True
    ********************************************************************************
    
    -------- Input profiles --------
    Profile host:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=gcc
    compiler.libcxx=libstdc++11
    compiler.version=11
    os=Linux
    [conf]
    tools.system.package_manager:mode=install
    tools.system.package_manager:sudo=True
    
    Profile build:
    [settings]
    arch=x86_64
    build_type=Release
    compiler=gcc
    compiler.libcxx=libstdc++11
    compiler.version=11
    os=Linux
    [conf]
    tools.system.package_manager:mode=install
    tools.system.package_manager:sudo=True
    
    
    -------- Computing dependency graph --------
    zlib/1.2.13: Not found in local cache, looking in remotes...
    zlib/1.2.13: Checking remote: conan-center-v2
    zlib/1.2.13: Checking remote: c3i_PR-v2-15068
    Graph root
        virtual
    Requirements
        mold/1.5.1#f061bdff508c73436225ec77d53faa98 - Cache
    Graph error
        Package 'zlib/1.2.13' not resolved: Unable to find 'zlib/1.2.13' in remotes
    
    -------- Computing necessary packages --------
    ERROR: Package 'zlib/1.2.13' not resolved: Unable to find 'zlib/1.2.13' in remotes
    
  • mold/1.4.2@:
    Didn't run or was cancelled before finishing

  • mold/1.8.0@:
    Didn't run or was cancelled before finishing

  • mold/1.7.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.

@ericriff
Copy link
Contributor Author

ericriff commented Jan 2, 2023

Well, I have no idea what's going on. It was complaining about zlib/1.2.12 not being found on conan v2, so I bumped it to 13, but nothing changed.

@prince-chrismc
Copy link
Contributor

The v2 pipeline is running a super duper old version that doesn't work so there's no packages.

Just ignore that for now

@ericriff
Copy link
Contributor Author

ericriff commented Jan 3, 2023

Thanks @prince-chrismc . I need to learn to read. It clearly says (informative, not required for merge) haha
Do you have any comments about #15068 (comment)?

@prince-chrismc
Copy link
Contributor

prince-chrismc commented Jan 3, 2023

I am still learning two profiles myself but AFAIK, "only host" means everything goes into the same scope... but adding the build profile we seperate things into two scopes

https://github.com/conan-io/conan-center-index/blob/7260c49e7020931ddb07f2e04941f6bb5711a240/recipes/mold/all/test_package/conanfile.py

should have a "build" scope AFAIK

self.run("cppfront -h", env="conanbuild")

I suspect the default scope for the test would be runtime

@conan-center-bot conan-center-bot merged commit 2326970 into conan-io:master Jan 6, 2023
AbrilRBS pushed a commit to AbrilRBS/conan-center-index that referenced this pull request Jan 16, 2023
…hooks allow it

* Use the official libexecdir now that the CCI hooks allow it

* Add version 1.8.0

* Bump zlib to 1.2.13
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.

4 participants