镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content

Get cmake to support IOS/Android #102

Open

Description

@rjdgtn

What about IOS/Android support?

Activity

  1. zpostfacto commented on Mar 16, 2020

    @zpostfacto
    Contributor

    Yeah, good idea. What exactly would be needed? Basically just the makefiles / build instructions I think, right?

    This code has shipped on iOS and Android. (Dota Underlords uses it.)

  2. rjdgtn commented on Mar 18, 2020

    @rjdgtn
    Author

    Yes just the makefiles and build instructions. Or just some information about preprocessor definitions should be present on ios/android builds.

  3. Levendo commented on Mar 24, 2020

    @Levendo

    I have a working iOS, MacOS and Android versions.

    Well, it would be better to have makefiles and build instructions, but, well, i prepared custom solutions (.sln) /projects for each platform out of the very same source codes and pushed to my forked version which works quite nice. That is handy when you want a build without the makefiles with IDE support, well of course it has IDE dependency in that way, i use Visual Studio 2017, 2019 for Android and Xcode for iOS and MacOS.

    I forked months ago, but it is not that far from current version.

    I may share if you wish, you may want to check the preprocessor definitions from projects. They all working for Android(x86, x64, armv7, arm64), iOS and MacOS. Just fyi.

    Check for release configurations:

    https://github.com/ingamegroup/GameNetworkingSockets/tree/master/build

  4. zpostfacto commented on Mar 24, 2020

    @zpostfacto
    Contributor

    Is there a standard way to get cmake to target android / iOS? I'd like to use that if possible.

    At Valve, we have two different sets of code that is using two different build environments: In one branch, we use VPC, our own cmake-like tool. And the other, we have hand-coded makefiles. Neither of these is really suitable for an opensource project, I think. I'd like to get cmake to work.

    I could document the needed defines and link libs that @Levendo probably figured out. I don't like the idea of checking in .vcprojx files directly, for the same reason that we don't do this for windows - just too many different configurations to maintain. Isn't this the whole purpose of cmake? :)

  5. nxrighthere commented on Mar 24, 2020

    @nxrighthere
    Contributor

    Is there a standard way to get cmake to target android / iOS?

    Yes, see Cross Compiling for Android and Cross Compiling for iOS, tvOS, or watchOS.

  6. zpostfacto commented on Mar 24, 2020

    @zpostfacto
    Contributor

    Cool, that sounds perfect! I don't have time to research this and hook this up and test it. But if somebody made a pull request, I'd take it!

    As @Levendo discovered, the code definitely compiles on Android and iOS and it's been shipped in Underlords on those platforms. So just figuring out the cmake part should be the only thing that needs to be done, and it's probably not going to rise on my priority list high enough for a while.

    I'll update the title and add a tag, maybe some kind soul will grab it!

  7. changed the title [-]IOS/Android support[/-] [+]Get cmake to support IOS/Android[/+] on Mar 24, 2020
  8. Levendo commented on Mar 24, 2020

    @Levendo

    Well, i'd love to do the research and do the stuff. It is quite busy these days :/. I'll keep it in mind.

  9. felipejfc commented on Mar 24, 2020

    @felipejfc

    We maintain a Fork where we made the changes for it to compile for both Android and iOS, so if anyone wants to use it as a base for a PR, here it goes

    https://github.com/tfgco/GameNetworkingSockets/commits/master

    Building instructions for both platforms are described in BUILDING.md, don't expect anything fancy :p

    See commits starting Mar-15

  10. nxrighthere commented on Mar 24, 2020

    @nxrighthere
    Contributor

    Looks good, just a few minor changes. 👍

  11. Levendo commented on Mar 24, 2020

    @Levendo

    Looks neat, good job.

    Third parties(OpenSSL and Protobuf) provided as pre-builts i guess. Just wondering do we need the build instructions for them as well as part of the building process?

  12. Fr33maan commented on May 10, 2020

    @Fr33maan

    Will it be as simple as rebasing the commits on last valve master and reading building instructions ? I see that fork is ~250 commits behind.

  13. LeventSevgili commented on Jul 19, 2024

    @LeventSevgili
    Contributor

    We've added an experimental CMake build support for building Android and iOS and opened a PR. ( #312 )
    You can follow the instructions at BUILDING_ANDROID.md and BUILDING_IOS.md files.

    We'd love you to take a look at it and maybe we can iterate on it. Hope it helps anyone!

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requesthelp wantedExtra attention is needed

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions