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

physx: add components #2173

Merged
merged 1 commit into from
Jul 14, 2020
Merged

Conversation

SpaceIm
Copy link
Contributor

@SpaceIm SpaceIm commented Jul 9, 2020

Specify library name and version: physx/all

  • 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.

Currenrly, PhysX doesn't export its targets, but it should be fixed by NVIDIAGameWorks/PhysX#222

PhysX has a target PhysX::PhysX which doesn't depend on all components. With current behaviour of conan, there is no way to properly model this target, since it is reserved for "custom conan global target".
Therefore, consumers could only link PhysX::PhysX with conan generators, without link errors, while they may have link errors without conan (if they use components not dragged by PhysX::PhysX, like PhysXExtensions, PhysXVehicle, PhysXCooking and PhysXCharacterKinematic, and forget to also link them).

@conan-center-bot
Copy link
Collaborator

All green in build 1 (b48162b688527481c94a203388dd305f3fd32294)! 😊

@SSE4 SSE4 requested review from danimtb and uilianries July 9, 2020 16:59
uilianries
uilianries previously approved these changes Jul 9, 2020
@uilianries uilianries requested review from jgsogo and SSE4 July 9, 2020 18:03
@jgsogo
Copy link
Contributor

jgsogo commented Jul 9, 2020

It is possible to have a target PhysX::PhysX that doesn't contain all the components. If you have a look to the generated FindXXX.cmake file there is if to check if a target with a global name has already being generated, only if it isn't Conan will create the global one. So something like this works:

def package_info(self):
    self.components["PhysX"].names["cmake_find_package"] = "PhysX"
    self.components["PhysX"].libs = ["only-liba"]

    self.components["ALL"].names["cmake_find_package"] = "all-dependencies"
    self.components["ALL"].requires = ["PhysX"]

will create a target PhysX::PhysX with only the library only-liba and a target PhysX::all-dependencies with all of them.

@SpaceIm
Copy link
Contributor Author

SpaceIm commented Jul 9, 2020

Nice, updated.

@conan-center-bot
Copy link
Collaborator

Some configurations of 'physx/4.1.1' failed in build 2 (5a6053239cdc69c5ebbb63149a8e57f3fa490113):

@SpaceIm SpaceIm force-pushed the fix/physx-components branch from 5a60532 to c81314b Compare July 9, 2020 21:30
@jgsogo jgsogo requested a review from uilianries July 10, 2020 06:06
@SpaceIm
Copy link
Contributor Author

SpaceIm commented Jul 10, 2020

CI stuck?

@SpaceIm SpaceIm closed this Jul 10, 2020
@SpaceIm SpaceIm reopened this Jul 10, 2020
@conan-center-bot
Copy link
Collaborator

An unexpected error happened and has been reported. Help is on its way! 🏇

@jgsogo
Copy link
Contributor

jgsogo commented Jul 10, 2020

Now it is running, even though Github doesn't show it

@conan-center-bot
Copy link
Collaborator

All green in build 4 (c81314bd3e81c15ffee452d166de36218f596f31)! 😊

@uilianries uilianries merged commit a58bee0 into conan-io:master Jul 14, 2020
@SpaceIm SpaceIm deleted the fix/physx-components branch July 14, 2020 13:46
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.

5 participants