Live data from Hacker News

Please – A Cross-Language Build System

please.build

101–110 of 122 posts

Re: Please – A Cross-Language Build System

#101
post #13

Cross language but not cross platform -- no windows support, and none planned.

Noted. https://github.com/qznc/annoying-build-systems#please

I like this list! But the "Yocto" entry should be fixed. The build system is called bitbake not "Yocto".

There are other projects that use the bitbake build system, not just OpenEmbedded and the Yocto Project.

Re: Please – A Cross-Language Build System

#102
post #13

Earlier quoted context omitted.

Noted. https://github.com/qznc/annoying-build-systems#please

Based on its lack of entry, am I to understand that Nix is the way to go?

There are some other distro specific build systems missing. So I wouldn't think much of it. But here would be my point for 'Nix': QA doesn't tested for Cross-compiling so it doesn't work while it should be supported in principle.

Re: Please – A Cross-Language Build System

#103
post #42

Earlier quoted context omitted.

> Relevant: http://www.rojtberg.net/1481/do-not-use-meson/ Meson is fantastic.

Except it’s a build system for C/C++ that brings in a dependency on the entire Python kitchen sink just to build a 10kb otherwise dependency-free binary.

The systems that I use it for all have Python installed by default, so really it's just: 'pip install meson', which takes all of a few seconds to run.

The binary it produces is still dependency free.

Re: Please – A Cross-Language Build System

#104

Is there a problem with cmake? Why are people still inventing new build systems?

cmake cons (IMHO): - the archaic custom scripting language (that's its main problem) - there are many ways to do the same thing, resulting in each (non-trivial) build script looking different - for the above reason, importing dependencies written by somebody else is non-trivial, and its often better to rewrite the cmake scripts completely - it lacks some 'integration features' found in more modern systems like Rust's…

Another disadvantage of cmake, when generating VS solution and project files, is that they are not standalone - just like when it generates makefiles [1]. It makes it nearly impossible to reason about your build dependencies from the VS IDE.

[1] https://github.com/qznc/annoying-build-systems#cmake

Re: Please – A Cross-Language Build System

#105
post #46

Earlier quoted context omitted.

No runtime dependency on the JVM is huge.

Why?

The JVM is okay if you need to build the build-tool (or whatever tool you're interested in). Ideally, to use such a tool, one shouldn't have to install an entire programming language and development environment. Personally, if I work in languages other than Java, I don't want to install the JDK just to use a cool tool. The tool should stand on its own.

Re: Please – A Cross-Language Build System

#106

this looks very interesting! Has anyone used it before?

>well I tried but they dont have samples so I gave up, no point in spending hours in reading docs and setting up something for a build system that may be useless. It also seemed suspiciously identical to bazel with really no features that may be special in any way? I mean really, why use this and not just bazel. The webpage doesnt even say

I agree with this guy. It shouldn't be that hard to include an example of an advanced script.

https://www.gnu.org/software/make/manual/make.html#toc-Compl...

Re: Please – A Cross-Language Build System

#108

I Googled to find the repository of a build system I wanted to mention and stumbled upon something else that I found interesting; https://shakebuild.com/ > Shake is a library for writing build systems. Most large projects have a custom-written build system, and developers working on the project are likely to run the build system many times a day, spending a noticeable amount of time waiting for the build system. This…

Why are the examples in some horrible slide set instead of just on the website?

Re: Please – A Cross-Language Build System

#109
post #13

Cross language but not cross platform -- no windows support, and none planned.

Noted. https://github.com/qznc/annoying-build-systems#please

You include "Yocto" (which someone already pointed out should be bitbake) but not kconfig, which is used by Linux, Buildroot, Busybox, uClibc-ng and a couple more projects).

Re: Please – A Cross-Language Build System

#110
post #103

Earlier quoted context omitted.

Except it’s a build system for C/C++ that brings in a dependency on the entire Python kitchen sink just to build a 10kb otherwise dependency-free binary.

The systems that I use it for all have Python installed by default, so really it's just: 'pip install meson', which takes all of a few seconds to run. The binary it produces is still dependency free.

I’m (honestly) glad it works for you.

Distributing binaries outside of package managers is a) a rarity in the Linux world, and b) not in keeping with the open source philosophy. Requiring end users to have python so they can compile a c/c++ application will never make sense for a large portion of the user base build systems target.

Post reply on HN