Go to the first, previous, next, last section, table of contents.


`Makefile.in' in `src/'

Some of the modifications made in the main `Makefile.in' will also be needed in the `Makefile.in' from your package sources, which we assume here to be in the `src/' subdirectory. Here are all the modifications needed in `src/Makefile.in':

  1. In view of the `dist:' goal, you should have these lines near the beginning of `src/Makefile.in':
    PACKAGE = @PACKAGE@
    VERSION = @VERSION@
    
  2. If not done already, you should guarantee that top_srcdir gets defined. This will serve for cpp include files. Just add the line:
    top_srcdir = @top_srcdir@
    
  3. You might also want to define subdir as `src', later allowing for almost uniform `dist:' goals in all your `Makefile.in'. At list, the `dist:' goal below assume that you used:
    subdir = src
    
  4. You should ensure that the final linking will use @INTLLIBS@ as a library. An easy way to achieve this is to manage that it gets into LIBS, like this:
    LIBS = @INTLLIBS@ @LIBS@
    
    In most GNU packages one will find a directory `lib/' in which a library containing some helper functions will be build. (You need at least the few functions which the GNU gettext Library itself needs.) However some of the functions in the `lib/' also give messages to the user which of course should be translated, too. Taking care of this it is not enough to place the support library (say `libsupport.a') just between the @INTLLIBS@ and @LIBS@ in the above example. Instead one has to write this:
    LIBS = ../lib/libsupport.a @INTLLIBS@ ../lib/libsupport.a @LIBS@
    
  5. You should also ensure that directory `intl/' will be searched for C preprocessor include files in all circumstances. So, you have to manage so both `-I../intl' and `-I$(top_srcdir)/intl' will be given to the C compiler.
  6. Your `dist:' goal has to conform with others. Here is a reasonable definition for it:
    distdir = ../$(PACKAGE)-$(VERSION)/$(subdir)
    dist: Makefile $(DISTFILES)
    	for file in $(DISTFILES); do \
    	  ln $$file $(distdir) 2>/dev/null || cp -p $$file $(distdir); \
    	done
    


Go to the first, previous, next, last section, table of contents.