eudev-project / eudev

Repository for eudev development
GNU General Public License v2.0
523 stars 147 forks source link

switch make usage to be POSIX compatible #184

Closed E5ten closed 4 years ago

E5ten commented 4 years ago

This allows other make implementations, such as bmake, to use autotools' generated Makefiles.

blueness commented 4 years ago

This breaks make distcheck. This may be partially due to a previous commit, but since we are cleaning things up, can I ask you to look at that? The error after committing your patch is

Making all in rules
make[3]: Entering directory '/home/blueness/REPOSITORIES/GIT/eudev/eudev-3.2.9/_build/sub/rules'
/bin/sed -e 's,[@]bindir[@],/home/blueness/REPOSITORIES/GIT/eudev/eudev-3.2.9/_inst/bin,g' 64-btrfs.rules.in > 64-btrfs.rules
/bin/sed: can't read 64-btrfs.rules.in: No such file or directory
make[3]: *** [Makefile:572: 64-btrfs.rules] Error 2
make[3]: Leaving directory '/home/blueness/REPOSITORIES/GIT/eudev/eudev-3.2.9/_build/sub/rules'
make[2]: *** [Makefile:450: all-recursive] Error 1
make[2]: Leaving directory '/home/blueness/REPOSITORIES/GIT/eudev/eudev-3.2.9/_build/sub'
make[1]: *** [Makefile:382: all] Error 2
make[1]: Leaving directory '/home/blueness/REPOSITORIES/GIT/eudev/eudev-3.2.9/_build/sub'
make: *** [Makefile:664: distcheck] Error 1
E5ten commented 4 years ago

So I'm about to force push a change that fixes that, it replaces the $@ usage in the 64-btrfs.rules rule with that actual name, because in distcheck for some reason I can't figure out bmake makes $@ the path to 64-btrfs.rules in its srcdir, instead of where it's being run, let me know if there are any more issues but with this change I'm able to successfully run distcheck with GNU make and bmake.

blueness commented 4 years ago

Okay that fixed it. Pushed. Thanks for the contribution!

E5ten commented 4 years ago

@blueness any chance you could make a minor release so a pre-generated autotools build system of eudev can be built with non-GNU make?