Support setting CFLAGS and CXXFLAGS for libraries/programs
Add a function for looking up programs in $PATH
More GNU Make 3.81 compatibility
Make it work on GNU Make > 3.81 again
Add variable GLOBAL_COMMON_DEPS

This is a list of dependencies on which all C/C++ object files depend.
Primarily useful for global precompiled headers.
Add a variable GLOBAL_CXXFLAGS_PCH for use by precompiled headers

You don't want to use GLOBAL_CXXFLAGS for passing flags like
"-include-pch" (clang), because that means you cannot use
GLOBAL_CXXFLAGS when generating the PCH.
Add support for making relocatable packages using $ORIGIN
Don't set an absolute soname
Tweak error message
Support Illumos

From https://github.com/NixOS/nix/pull/236
Sync with make-rules repo
Fix compile errors on Illumos