Autotools is the de facto build system for most of the GNU system programs. The bit about dependency management mostly fits but I would argue that letting us figure out how to build and install the dependencies is fairly UNIXy. It’s also unclear to me that centralized package managers are necessarily better for security, though they’re easier to use. Also a lot of more modern tools I’ve tried to build in recent months do not give a crap about cross compilation as a use case. At least with autotools its supported by default unless the library authors did something egregious like hard coding the sysroot or toolchain paths.
EDIT: Just re-read the below and realized it might sound terse and argumentative; apologies, I was typing quickly and didn't mean to be combative. :)
> I would argue that letting us figure out how to build and install the dependencies is fairly UNIXy
Crumby build systems force you to figure out how to build and install dependencies (or die trying). Modern build systems allow you to figure out how to build and install dependencies. If the former is "more UNIXy" than the latter, then I strongly contend that "UNIXy" is not a desirable property.
> It’s also unclear to me that centralized package managers are necessarily better for security, though they’re easier to use.
"Centralized" is irrelevant. Go's package manager is decentralized, for example. Moreover, many folks in the C world rely heavily on centralized repositories. Further, I would be shocked if manually managing your dependencies was somehow less error prone (and thus more secure) than having an expert-developed program automatically pull and verify your dependencies.
> Also a lot of more modern tools I’ve tried to build in recent months do not give a crap about cross compilation as a use case.
I mean, C doesn't care about anything, much less cross compilation. It puts the onus on the developer to figure out how to cross compile. Some build system generators (e.g., CMake, Autotools) purport to solve cross compilation, but I've always had problems. Maybe I just don't possess the mental faculties or years of experience required to master these tools, but I think that supports my point. By comparison, cross compilation in Go is trivial (set `CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build` works virtually every time from any platform). I haven't done much Rust cross-compilation, but I would be surprised if it were harder than C/C++.
I can't speak for cmake but in autotools it's always just been "./configure --host=aarch64-linux-gnueabi" or whatever other target triplet is of relevance. It's similar in Meson.
The annoying factor is gathering the cross compiler and target dependencies, which is fortunately becoming easier with tools such as llvm/clang, and distros such as debian have always made huge efforts to facilitate it.
> Also a lot of more modern tools I’ve tried to build in recent months do not give a crap about cross compilation as a use case
On the other hand, more modern languages like Rust and Go tend to have a single standard library and compiler that can be used across basically any common operating system, whereas trying to use gcc/libstdc++ or clang/libc++ on Windows can be an ordeal, and using MSVC on Unix is essentially not an option at all. Cross compilation for other architectures might be a bit more work, but the majority of developers don't have to worry about that very much, whereas support across Linux, MacOS, and Windows is a lot more common.
Yeah anecdotally I’ve hopped on a couple planes this year where masking is required. Normally my wife and I get sick from the plane. But since we’ve been wearing KN95s the whole time starting when we get to the airport we haven’t been getting sick at all.
In my state the vaccination rate is above 70% and the hospitalization rate has decoupled from the positive rate. The spike this winter ended in October whereas last winter it didn’t end until January. We’ve been on a downward trend even with shows and restaurants open and people having parties. So I would cite that as evidence the vaccine is protecting our population.
Or perhaps people are acquiring immunity through contact since the majority of cases have been known to be mild or asymptomatic since the pandemic started? And/or the virus is mutating into less infectious substrains?
Cold/flu viruses come and go. This virus will do the same. People will see it as evidence that the vaccines worked when in reality the pandemic very likely would have ended without them, yet here we are facing mandates...
I want legislation that the manufacturer has to publish, online and in a conspicuous place, full board-level schematics, parts lists, and service notes for household appliances no later than the day after the first unit of a model goes out of warranty. Or that such documents are placed prominently in the packaging the product arrives in and that installers are required by law to provide it to the customer. You can sell something that breaks in 3 years but you have to give me the documents I need to repair it including the logic board. My biggest fear in getting a new washer/dryer is that it starts my wife and I on the same junk treadmill everyone else is on.
how do you imagine this working for the manufacturers of, e.g. hardware security modules? in fact, for any product, the manufacter can just claim the product consists of one 'part' and the service notes state 'obtain new part', adjusting for whatever level of granularity/number of parts they feel is optimal, unless you want to get into a game of definitions and semantics that will always be incomplete and incorrect and unenforceable...
> My biggest fear in getting a new washer/dryer is that it starts my wife and I on the same junk treadmill everyone else is on.
In my experience, the more expensive washers/driers (e.g. >$1000) are actually higher quality and last 5 times longer than the cheap, or even mid range ones.
The issue with those products today is that some are more expensive because they include new tech like AI, wifi and crap like that. The core or the product is low to mid range but the adding (useless) tech means that it will be high priced.
If you buy a low tech/high range product, you'll be able to serve it easily and it will outlast you.
What proof do you have that enumeration of function is equivalent to understanding? If I encounter a building-size device filled with large cogs and two stones, I can’t immediately tell from looking at it whether its purpose is to grind apples or wheat. So I’m not sure you can say that an animal is or isn’t sentient based on the organization of its cells.
In my state prospective teachers are fingerprinted and their prints are run through the FBI database when applying for the certification. My prints are in that database.
The other point that’s being missed here is that pedestrians need a bunch of stuff that’s ignored:
* to be able to walk from business to business in minutes or seconds
* to feel safe walking across the street
* to be able to have conversations with other people outside without having to yell over traffic.
The stroad is also really bad at providing these needs because pedestrians are not considered at all in US roadway design.
Okay, great, we've really moved the conversation forward here.
The vague implication, that 2-lane state and federal highways shouldn't have driveways on them, is not and will not be the situation for the foreseeable future, so there's a pretty good case for using some nuance instead of insisting on some particular technical definition.