|
|
makefile on solaris
I'm trying to get a makefile setup using the version of make that comes with
Solaris 9. My situation is that I have a large number of files, about 300
which all end in the extension of ".fmb". When the files are properly
compiled they end up with an extension of ".fmx". There is a dependency on
files with an extension of "*.plx". The plx files are created from "*.pll"
files. The pll have no dependencies, they are the starting point.
I have another group of files which end in the extension of mmb. They are
much like the fmb files. The same rules apply.
The dependency of the fmb and mmb files is pretty simple. They all work the
same way.
To compile and individual fmb file one would enter "ifgenm module=zaq.fmb
module_type=form log=zaq.log"
To compile and individual mmb file one would enter "ifgenm module=cde.mmb
module_type=menu log=cde.log"
All of the pll and fmx file's prefixes are the same as the plx and fmx
files. I think I am saying this correctly, and example would be: zaq.fmb
compiles to zaq.fmx and xsw.pll compiles to xsw.plx
I can have new fmx and mmb files to compile pretty much without warning. The
developers copy the files out to a location on the system and their ready.
To deal with this situation I want to have a makefile that groups the fmb
files together so that a developer can simply enter something like "make
new_fmb" which would look find the fmb files newer than the fmx and compile
that list. The same of the mmb files: something like "make new_mmb".
I am hoping there is a way to just group all the fmb files so that I do not
have to list all 300 fmb files in the makefile. I have tried some lines
like:
..fmb
ifgenm module=$<
plus a bunch of other ways. My question is: Can this be done, grouping files
by extension and use the same line? I really want to avoid something like
1.fmb
ifgenm module=$<
2.fmb
ifgenm module=$<
and so on. If so what does the makefile look at, could I have an example
Thanks for your time.
|
|
0
|
|
|
|
Reply
|
shankeyp (23)
|
2/24/2004 12:53:48 PM |
|
In article <bJ6dneFJDoJJ1abdRVn-hQ@comcast.com>,
Oxmard <shankeyp@no-spam.comcast.net> wrote:
>I'm trying to get a makefile setup using the version of make that comes with
>Solaris 9. My situation is that I have a large number of files, about 300
>which all end in the extension of ".fmb". When the files are properly
>compiled they end up with an extension of ".fmx". There is a dependency on
>files with an extension of "*.plx". The plx files are created from "*.pll"
>files. The pll have no dependencies, they are the starting point.
>
Here is a piece of a Makefile that does something similar:
##########
JC = javac
DEFAULT_CLASSPATH = ..
JFLAGS = -g -classpath $(DEFAULT_CLASSPATH)
..SUFFIXES: .java .class
..java.class:
$(JC) $(JFLAGS) $<
target: <list of class files to make>
##########
If the file foo.class is needed and foo.java is present and newer than
the java compiler javac is run.
I didn't bother trying to understand all the details of your requirements.
But I've given you enough to get started. Note that this is not perfect,
even for the java, but I have found it useful.
--
http://www.math.fsu.edu/~bellenot
bellenot <At/> math.fsu.edu
+1.850.644.7189 (4053fax)
|
|
0
|
|
|
|
Reply
|
fakeuser
|
2/24/2004 5:36:24 PM
|
|
So then you would enter: make target
Is that correct?
<fakeuser@invalid.domain> wrote in message news:c1g22o$j8m$1@news.fsu.edu...
> In article <bJ6dneFJDoJJ1abdRVn-hQ@comcast.com>,
> Oxmard <shankeyp@no-spam.comcast.net> wrote:
> >I'm trying to get a makefile setup using the version of make that comes
with
> >Solaris 9. My situation is that I have a large number of files, about 300
> >which all end in the extension of ".fmb". When the files are properly
> >compiled they end up with an extension of ".fmx". There is a dependency
on
> >files with an extension of "*.plx". The plx files are created from
"*.pll"
> >files. The pll have no dependencies, they are the starting point.
> >
>
> Here is a piece of a Makefile that does something similar:
> ##########
> JC = javac
> DEFAULT_CLASSPATH = ..
> JFLAGS = -g -classpath $(DEFAULT_CLASSPATH)
>
> .SUFFIXES: .java .class
>
> .java.class:
> $(JC) $(JFLAGS) $<
>
> target: <list of class files to make>
> ##########
>
> If the file foo.class is needed and foo.java is present and newer than
> the java compiler javac is run.
>
> I didn't bother trying to understand all the details of your requirements.
> But I've given you enough to get started. Note that this is not perfect,
> even for the java, but I have found it useful.
>
> --
> http://www.math.fsu.edu/~bellenot
> bellenot <At/> math.fsu.edu
> +1.850.644.7189 (4053fax)
|
|
0
|
|
|
|
Reply
|
Oxmard
|
2/25/2004 2:12:06 PM
|
|
In article <u6ednUkEsO4wMaHdRVn-gQ@comcast.com>,
Oxmard <shankeyp@no-spam.comcast.net> wrote:
><fakeuser@invalid.domain> wrote in message news:c1g22o$j8m$1@news.fsu.edu...
>> Here is a piece of a Makefile that does something similar:
>> ##########
>> JC = javac
>> DEFAULT_CLASSPATH = ..
>> JFLAGS = -g -classpath $(DEFAULT_CLASSPATH)
>>
>> .SUFFIXES: .java .class
>>
>> .java.class:
>> $(JC) $(JFLAGS) $<
>>
>> target: <list of class files to make>
>> ##########
>
>
>So then you would enter: make target
>Is that correct?
>
Yes `make target' works, but so does just `make' as `target:' is the first
(and hence the default) target of the Makefile.
--
http://www.math.fsu.edu/~bellenot
bellenot <At/> math.fsu.edu
+1.850.644.7189 (4053fax)
|
|
0
|
|
|
|
Reply
|
fakeuser
|
2/25/2004 3:38:14 PM
|
|
|
3 Replies
124 Views
(page loaded in 0.06 seconds)
Similiar Articles: Makefile: set macro once (Solaris make, GNU make) - comp.unix ...Hello, I have a question on a problem that is disturbing me for some time now. I want to set a variable in a Makefile by calling a shell command. Th... $HOST or $HOSTNAME env variable? - comp.unix.solarisIt works on Linux, but on solaris it is HOST, even with same shell (tcsh, bash). How can i workaround this problem without entirely modifying a makefile i don't own? nis slave or master on solaris 10 zone - comp.unix.solaris ...I am trying to install one of my solaris 10 zone to be an NIS slave, and later master. ... make -d I get the following: > Rejecting impossible implicit prerequisite `Makefile.c ... NIS password aging in Solaris 10 - comp.unix.solarisI'm looking at /var/yp/Makefile in Solaris 10 and I see that there is a new map, called ageing, here is the entry: ageing.time: $(PWDIR)/shadow ... export does not work on makefiles - comp.unix.programmer ...why setfacl does not work? - comp.unix.solaris export does not work on makefiles - comp.unix.programmer ... Hi, If I have a Makefile like: test: export test=5 why does ... Compiling a Visual Studio project in Unix using gcc/icc - comp ...Compiling gdb 6.5 on Solaris 9/10 - comp.unix.solaris Compiling a Visual Studio ... How to compile module in Makefile? - comp.lang.fortran Compiling a Visual Studio ... how to access environmental variables from shell in makefile ...Set environment variable: var=value export var Access it in a makefile: target ... can I access an environment ... crontab - environmental variables (platform: solaris ... Linker problem - comp.unix.solarisOn Solaris you normally should use Sun's ld over gld. Most link problems I had were ... can try to add the gcc flag "-mimpure-text" after the "-shared" flag in the Makefile ... command line length limit - comp.unix.solarisI never > see it unless I'm the one writing the makefile. Fine. You don't type it. ... the aux vector, the environment and the arguments (1M for 32 bit apps in Solaris ... gdb for Solaris 10 - comp.unix.solarisIs there any gdb version available for Solaris 10? I could not find any after ... 512 Jun 5 01:15 .. |-rw-r--r-- 1 keramida bedc 1727 Jun 5 01:39 Makefile ... C++ Solaris Makefile - EDN: ESRI Developer Network# Example Makefile for ArcEngine C++ Programming on Solaris # # The PROGRAM macro defines the name of the program or project. It # allows the program name to be ... Introduction to the "make" UtilityContents: Overview; Introduction to makefile; Components of makefile; Comments; Explicit Rules; Execution of make; Advantages of make; Variable Definitions ... 7/29/2012 9:12:47 PM
|
|
|
|
|
|
|
|
|