Thread with 30 posts
jump to expanded postmegacorp-scale software projects are so unsustainable. if your project's source code is larger than a gigabyte or takes more than a few minutes to compile… god, i'd rather sacrifice a months of my time writing a smaller alternative than have to suffer through building it
(sorry, i am once again venting about ANGLE… but this may as well be about LLVM or <insert large, Google-sponsored project here>)
have any of you noticed how few dependencies touchHLE has, considering all the things it needs to do, and how it can be compiled in less than quarter of an hour even on an underpowered dual-core machine? that's my way of fighting back against compile-time and source-code bloat.
Google projects are a special beast though. LLVM has the scale of a Google project but they are not so arrogant as to think that only a Google engineer would want to download or build it.
@hikari every time I interface with a Google project I get the distinct feeling that I should either be a Google employee or know a Google employee
@hikari@social.noyu.me I used to maintain my own branch of LineageOS with some extra patches thrown in. I understand your pain.
12 hour builds for minor changes were regular because incremental/dirty builds kept breaking shit.
The newer versions I literally can not build anymore because it needs 32 GBs of RAM minimum. And I know full well it'll absolutely use up all 32 and swap like hell doing it.
That was not a fun few months.
@hikari but llvm is a dependency, check mate atheists /s
@eater LLVM is not a dependency of touchHLE! I considered using it for reading object files, and I do have a branch somewhere which does use it for that, but I was able to find a much more lightweight alternative
@hikari rustc can work without llvm?
@eater oh i see what you mean, but i don't have to build rustc myself at least
* ./configure && make && sudo make install
* Some simple custom build script
* CMake
* Download the internet
and LLVM is in category 3
@saagar yeah I completely agree (https://social.noyu.me/@hikari/statuses/01H5HXKCVRJWEY246KSV4XXR5A). an LLVM checkout may be at least 2GB in size and it might take an hour to build, but it is a single git repo, uses a normal build system, and is at least partially modular, so it's not too bad. i've worked on multiple projects that integrate it
@saagar also LLVM has this amazing thing called OFFICIAL BINARY RELEASES that Google have never heard of
@saagar so yeah it was definitely unfair of me to so much as utter LLVM in the same breath as ANGLE or Chromium
@saagar facebook voice binaries? you mean the multi-gigabyte blobs we have to use BitTorrent to distribute to our datacentres?
@hikari I refuse to believe that anyone, anywhere has ever actually compiled chrome. the binaries are some sort of divine artifact
@saagar @0xabad1dea this is also my friend (@AmyZenunim)'s solution to having ANGLE as a dependency. divine artifacts, from hell
@hikari @saagar @0xabad1dea yep. I have a GitHub Action compile the library for all the platforms I need and then upload them as binary blobs to the repo afterwards. compiling them all independently would be a full-time job 🥲
@0xabad1dea @hikari back at plex we compiled chromium, at least
@rcombs @0xabad1dea @hikari FWIW I agree with the take the binaries are not real and divine artifacts instead
@tamas @rcombs @0xabad1dea give us this day our daily build, and forgive us our vulnerabilities, as we forgive those who exploit ours,
@hikari this brings back fond memories of zDOOM only taking 30 seconds to compile on my computer 15 years ago.