Makefile.inc: Use pkg-config to find libraries
MacOS systems using MacPorts, among others, do not have libpng and liblz4 include files and libraries in the standard system paths; this ensures that wherever they are, they're added to the compiler and linker options.
(This requires that users have installed pkg-config, but most systems with development tools will have that already.)
This doesn't work, because the following Makefiles do not use the CFLAGS set in Makefile.inc, but instead override it:
tc$ ggrep 'CFLAGS ='
Makefile.inc:CFLAGS = -O2 -Wall $(shell pkg-config --cflags libpng liblz4)
demos/lores_escape/generator/Makefile:CFLAGS = -Wall -O2
demos/megademo/music/Makefile:CFLAGS = -g -O2 -Wall
demos/seasons/x86/Makefile:CFLAGS = -O2 -Wall
demos/second/part01_intropan/tools/Makefile:CFLAGS = -Wall -O2
demos/second/part18_3d/auto/Makefile:CFLAGS = -g -Wall -O2
ethernet/c/Makefile:CFLAGS = -Wall -O2
games/duke/maps/Makefile:CFLAGS = -g -Wall -O2
games/keen/maps/Makefile:CFLAGS = -g -Wall -O2
games/keen/sound/Makefile:CFLAGS = -Wall -O2
games/keen/story/Makefile:CFLAGS = -Wall -O2 -g
games/ksp/c/Makefile:CFLAGS = -Wall -O2
games/mist_hgr/graphics_title/animation/Makefile:CFLAGS = -O2 -Wall
games/peasant/text/Makefile:CFLAGS = -O2 -Wall -g
graphics/gr/plasmagoria/sines/Makefile:CFLAGS = -O2 -Wall
music/pt3_player/table_gen/Makefile:CFLAGS = -O2 -Wall
music/still_alive/art/Makefile:CFLAGS = -O2 -Wall
random/Makefile:CFLAGS = -O2 -Wall
utils/bmp2dhr/Makefile:CFLAGS = -Wall -O2
utils/fractal/Makefile:CFLAGS = -O2 -Wall -g
utils/gimp/hgr_gimp_palette/Makefile:CFLAGS = -O2 -Wall -g
utils/gr-sim/6502_test/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/Makefile:CFLAGS = -Wall -O2 -g
utils/gr-sim/bubble/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/dgr/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/dhgr/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/donut/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/dos/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/dots/Makefile:CFLAGS = -O2 -Wall -g
utils/gr-sim/drops/Makefile:CFLAGS = -O2 -Wall -I.. -g
utils/gr-sim/fade/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/fire/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/gr/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/hellmood_memories/Makefile:CFLAGS = -O2 -Wall -I.. -g
utils/gr-sim/hgr/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/kaleido_sparkle/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/lz4/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/mode7_demo/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/plasma/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/rasterbars/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/raytrace/Makefile:CFLAGS = -O2 -Wall -I.. -g
utils/gr-sim/rotate_wipe/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/split_screen/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/starfield/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/starpath/Makefile:CFLAGS = -O2 -Wall -I.. -g
utils/gr-sim/text/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/tfv/Makefile:CFLAGS = -Wall -O2 -g -I..
utils/gr-sim/tunnel/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-sim/twister/Makefile:CFLAGS = -O2 -Wall -g
utils/gr-sim/water/Makefile:CFLAGS = -Wall -O2 -I.. -g
utils/gr-utils/Makefile:CFLAGS = -g -Wall -O2
utils/hgr-utils/Makefile:CFLAGS = -O2 -Wall -g
It's not clear to me why so many programs want to specify their own CFLAGS rather than use the default.
The commit has been tweaked to fix the original issue for a couple of graphics programs that really need the Makefile.inc CFLAGS. The rest are untouched, but probably they should all be converted in the same way.