automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

How to specify 2 stage build in Makefile.am


From: Duncan Gibson
Subject: How to specify 2 stage build in Makefile.am
Date: Wed, 16 Oct 2002 16:10:43 +0200

I'm struggling to set up the necessary autoconf and automake files
required to build an application which uses the 'fluid' compiler of
fltk to process a name.fl file into name.cxx and name.h files.
(See http://www.fltk.org) This two stage build is supported for lex
and yacc files, albeit with some additional autoconf macros, so it
must be possible for other tools such as 'fluid'.

I've stripped Makefile.am down to the bare bones:

    AUTOMAKE_OPTIONS = foreign

    bin_PROGRAMS = CubeView

    CubeView_SOURCES = \
            CubeMain.cxx \
            CubeView.cxx CubeView.h \
            CubeViewUI.fl

    SUFFIXES = .cxx .h .fl

    .fl.cxx .fl.h:
            fluid -c $<

    CubeViewUI.cxx \
    CubeViewUI.h:   CubeViewUI.fl

This is based on the section on Launguage Support on page 230 of the
"GNU autoconf, automake and libtool" book by Vaughan et al.

The Makefile produced at the end of the configure stage seems unable to
generate the CubeViewUI.cxx and CubeViewUI.h files from CubeViewUI.fl,
even if I explicitly say 'make CubeViewUI.cxx'

It took a bit more poring over the documentation before I realized that
I could add the following line(s):

    nodist_CubeView_SOURCES = \
        CubeViewUI.cxx CubeViewUI.h

Now 'make' still fails when it tries to build CubeMain.o because it wants
to #include CubeViewUI.h which has not yet been built. However, if I say
'make CubeViewUI.cxx' then 'fluid -c CubeViewUI.fl' is called as expected.

I've fiddled around adding various values of CubeView_DEPENDENCIES, but
to no avail. I've been banging my head all morning on this problem.

What am I doing wrong? What magic combination of primaries do I need?

Cheers
Duncan

PS. The developemnt environment is:
    RedHat 7.3
    autoconf (GNU Autoconf) 2.53
    automake (GNU automake) 1.6.3
    fltk-1.1.0
    g++  2.96




reply via email to

[Prev in Thread] Current Thread [Next in Thread]