Re: [cc65] Please critique this makefile

From: Oliver Schmidt <ol.sc1web.de>
Date: 2010-04-23 12:47:03
Hi,

> I added conditionals below so that default values are supplied instead of
> failing when some variables are not defined. Target choice is following the
> defaults of cc65 utilities.

I intentionally didn't do that. The usefulness of doing so depends
from my perspective from the intended scenario. If you i.e. want to
integrate the Makefile into some framework than that framework should
just always provide the name of the target to build for on the GNU
make cmdline. Apart from that:

- The C64 default has no technical background and is just guesswork
based on some anticipated user preference.

- The "it's in the path" default typically doesn't get you far as the
tools don't find their headers and libraries without environment
variables set. On Windows this has always been this way and if I
understood a recent discussion on this list right than this is now
true on Unix as well. Since the last cc65 release CC65_HOME can
replace all the other cc65 variables pointing to cc65 subdirectories.
Including <cc65>/bin into the path is a nice add-on to reduce typing
when running cl65 from the cmdline. But I don't see a point in relying
on that in a Makefile.

From my perspective much more useful is something like this (from my
Contiki Makefiles):

ifndef CC65_HOME
  ${error CC65_HOME not defined! You must specify where cc65 resides}
endif

All in all I'd say that I spent _way_ more time in my worklife finding
out why something didn't work because of some default I didn't know of
and had to figure out how to override than adding necessary parameters
I was asked for...

Just my two cents,
Oliver
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo@musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.
Received on Fri, 23 Apr 2010 12:47:03 +0200

This archive was generated by hypermail 2.1.8 : 2010-04-23 12:47:13 CEST