I'm trying to get a binary to compile only if a certain "--enable-xxx" is specified to ./configure. There may be a filename collision that's causing problems. Maybe someone here can check my math.
Near the top of Makefile.am, I start with: sbin_PROGRAMS = openfoo openfoo-util1 openfoo-util2 One of the source files for "openfoo" is a file called "stats.c". Then I have this, checking for "--enable-stats" and adding a new binary called "openfoo-stats" if it's there: if STATS sbin_PROGRAMS += openfoo-stats openfoo_stats_SOURCES = openfoo-db.c openfoo-stats.c endif There are indeed two different source files in the package, one called "openfoo-stats.c" (used by openfoo-stats) and one called "stats.c" (used by openfoo). Running "automake" causes this complaint: openfoo/Makefile.am: object `openfoo-stats.$(OBJEXT)' created by `openfoo-stats.c' and `stats.c' I thought maybe this has to do with filename similarity. Indeed renaming the files, even by removing the hyphens, solves the problem. Is this something I can mitigate without renaming files in my package? Also, just to confirm, this is something I can safely ignore, correct?: libfoo/Makefile.am:2: compiling `foo.c' with per-target flags requires `AM_PROG_CC_C_O' in `configure.ac' Adding that to my "configure.ac" as it suggests doesn't make the problem go away. -MSK