0

I got a project that has, say 10 directories (as a tarball). I edited the top level Makefile.am so as to exclude from the build, say 5 of the directories. Then I ran autoreconf

(Is this really a legal step? After all, I do not have an svn repository. I just got a source tarball).

I could now configure and build. Wishing to distribute this skimmed version, I created another tarball with make dist . On the client machine, when I try to configure (without running autoreconf), I get error:

error: cannot find input file: <excluded directory>/Makefile.in

I do not understand the client machine knows the existence of <excluded directory>. If I run autoreconf before creating the distribution with skimmed Makefile.am, won't the top level Makefile.in be updated so as to reflect these changes?

Thank you,

Elan.

PS: For the skimmed package, make distcheck of the modified source failed, with error 'Tcl configuration files not found' (The project has some Tcl/Tk). But make dist created a tar ball.

Elan
  • 443
  • 5
  • 14

1 Answers1

2

You also need to look for a call to AC_CONFIG_FILES([ ... ]) (where ... is a list of files) in configure.ac, and remove <excluded directory>/Makefile from that list. If you don't, then configure will look for Makefile.in in <excluded directory> and try to transform it into Makefile, as you have found out.

ptomato
  • 56,175
  • 13
  • 112
  • 165