Next: src/Makefile, Previous: config.h.in, Up: Adjusting Files [Contents][Index]
Makefile.in
at top levelHere are a few modifications you need to make to your main, top-level
Makefile.in
file.
Makefile.in
,
so the ‘dist:
’ goal will work properly (as explained further down):
PACKAGE = @[email protected] VERSION = @[email protected]
Wherever you process subdirectories in your Makefile.in
, be sure
you also process the subdirectory ‘po
’. Special
rules in the Makefiles
take care for the case where no
internationalization is wanted.
If you are using Makefiles, either generated by automake, or hand-written
so they carefully follow the GNU coding standards, the effected goals for
which the new subdirectories must be handled include ‘installdirs
’,
‘install
’, ‘uninstall
’, ‘clean
’, ‘distclean
’.
Here is an example of a canonical order of processing. In this
example, we also define SUBDIRS
in Makefile.in
for it
to be further used in the ‘dist:
’ goal.
SUBDIRS = doc lib src po
dist:
’ goal, as po/Makefile
will later
assume that the proper directory has been set up from the main Makefile
.
Here is an example at what the ‘dist:
’ goal might look like:
distdir = $(PACKAGE)-$(VERSION) dist: Makefile rm -fr $(distdir) mkdir $(distdir) chmod 777 $(distdir) for file in $(DISTFILES); do \ ln $$file $(distdir) 2>/dev/null || cp -p $$file $(distdir); \ done for subdir in $(SUBDIRS); do \ mkdir $(distdir)/$$subdir || exit 1; \ chmod 777 $(distdir)/$$subdir; \ (cd $$subdir && $(MAKE) [email protected]) || exit 1; \ done tar chozf $(distdir).tar.gz $(distdir) rm -fr $(distdir)
Note that if you are using GNU automake
, Makefile.in
is
automatically generated from Makefile.am
, and all needed changes
to Makefile.am
are already made by running ‘gettextize
’.
Next: src/Makefile, Previous: config.h.in, Up: Adjusting Files [Contents][Index]