Announcement

Collapse
No announcement yet.

Wayland Adds Meson Build System Support

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by Sonadow View Post

    Python is already a near defacto requirement on a modern desktop Linux system since a number of tools and utilities depend on it. No distribution ships a desktop installation without Python already included as part of the base install.

    Adding 4mb to an already large base install hardly counts as bloat.
    Sure, if you're using a desktop PC, but you might also want to use a headless CI/CD build server.

    Comment


    • #12
      I can't think of any major server distro that doesn't ship with Python either.

      Comment


      • #13
        Originally posted by caligula View Post
        To be fair, Ninja depends on Python which provides a non-trivial amount of runtime code. For example, on Arch Linux Python3 package is 152 MB in size.
        ninja does not depend on python, its only needed for bootstrapping the build (ie. ninja's own buildsystem contain python scripts).

        meson is another mess however, since its not anywhere complete and not extensible you end up with various shell (often with bashisms) and python scripts in a package, and pretty much anything I tried to crossbuild on embedded needs special care to compile.
        if you for ex. use buildroot, it will never use the system installed meson but build a patched one from source (and build python3 aswell). if just one package depends on meson, you will easily double the buildtime of your root filesystem.
        Yeah, it might be a good replacements for autotools but that's a pretty low bar.

        Edit: and it seems in the master branch of ninja, there is already CMake support, so no need for python to build ninja in the future
        Last edited by discordian; 01-14-2020, 05:31 AM.

        Comment


        • #14
          Originally posted by boxie View Post

          inb4 this user suggests the custom set of bash scripts they have developed
          Thats equally nasty, either use makefiles or autotools properly :^)

          Comment


          • #15
            CMake is always the answer.

            Comment


            • #16
              Meson is an abomination since it's written in Python. Ninja is fine.

              CMake is fine too, because it is statically compiled, so you can drop it on any system and have it work.

              Meson doesn't even work for 5 year old distros or very long term release distros since it relies on new Python features. It's the most pathetic build system in existence.

              Comment


              • #17
                Help me understand something. When people complain Wayland doesn't support this and that, it gets pointed out that Wayland is just a protocol and it's the concrete implementation that's the problem. If Wayland is just a protocol, why does it need meson?

                Comment


                • #18
                  As an alternative to ninja, there's also samurai ( https://github.com/michaelforney/samurai ) which is officially supported by meson ( https://github.com/mesonbuild/meson/issues/3405 ). It's written in C and has a small Makefile for building it.

                  Comment


                  • #19
                    Originally posted by bug77 View Post
                    Help me understand something. When people complain Wayland doesn't support this and that, it gets pointed out that Wayland is just a protocol and it's the concrete implementation that's the problem. If Wayland is just a protocol, why does it need meson?
                    Well, I assume because even protocol spec needs to build the interfaces, headers, documentation etc..

                    Comment


                    • #20
                      Originally posted by Weasel View Post
                      Meson is an abomination since it's written in Python. Ninja is fine.

                      CMake is fine too, because it is statically compiled, so you can drop it on any system and have it work.

                      Meson doesn't even work for 5 year old distros or very long term release distros since it relies on new Python features. It's the most pathetic build system in existence.
                      That sounds like a distro problem rather than a Meson problem.

                      Comment

                      Working...
                      X