Visit Our UNIX and Linux User Community


Make-question - redefine a macro, using another macro..?


 
Thread Tools Search this Thread
Top Forums Programming Make-question - redefine a macro, using another macro..?
# 1  
Old 12-10-2008
Make-question - redefine a macro, using another macro..?

I think there is no problem to use any macro in a new macro definishion, but I have a problem with that.
I can not understand why?

I have a *.mak file that inludes file with many definitions and rules.
Code:
##############################################
include dstndflt.mak
...

One of the declarations I need to change, adding some options
Thant is
Code:
PCFLAGS=MODE=ANSI RELEASE_CURSOR=NO LTYPE=$(LIST) IRECLEN=255 -xs \
ORECLEN=255 DEF_SQLCODE=YES $(PCADD)

In my make-file on begining I do that:
Code:
...
PCFLAGS=SQLCHECK=SEMANTICS $(PCFLAGS)  
...

and proces it. - Have an error:
Code:
> make -f t_7713_DB.mak
mksh: Fatal error in reader: Loop detected when expanding macro value `SQLCHECK=SEMANTICS $(PCFLAGS)'

What is wrong?
I have tryed with temporary reassigning, but the same result:
Code:
tmp=$(PCFLAGS)
PCFLAGS=SQLCHECK=SEMANTICS $(tmp)   
...
 #in shell, executing
> make -f t_7713_DB.mak
mksh: Fatal error in reader: Loop detected when expanding macro value `SQLCHECK=SEMANTICS $(tmp)'

Upreciate your help!
# 2  
Old 12-11-2008
With GNU make you can use a "simply expanded" variable, e.g.
Code:
PCFLAGS := SQLCHECK=SEMANTICS $(PCFLAGS)

to prepend a string to a variable, or
Code:
PCFLAGS += SQLCHECK=SEMANTICS

to append it.
# 3  
Old 12-12-2008
Hm!
That means that different 'make' has different syntax flavor!
I haven't use the man-pages, but book on my table, it is right.
I will try it on work and add a result here.

Thank you for replay!

OK!!
I have checked it and
the second way works in my make,
BUT first one - does not!! - The statement just simply ignored.

Any way, again: Big Thank You!

Last edited by alex_5161; 12-16-2008 at 07:37 PM..

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

Explanation of a macro

Can some body explain this part in a header file for me? #include <limits.h> #define BIGNUM unsigned long long typedef BIGNUM (*hash_t) (char *str); ......I have hard time for the second part: typedef BIGNUM (*hash_t) (char *str); First, I could not find the definition of hash_t, which... (1 Reply)
Discussion started by: yifangt
1 Replies

2. UNIX for Dummies Questions & Answers

UNIX macro....Im new!!

Hey guys, thanks for lookin....my question is I want to create a macro on HPUX to SFTP a .xls to my Windows Server....I have exstensively searched and all I can find is What a macro is not how to create one. Reasoning for having a macro is to put it in a file creation script and have it run at... (7 Replies)
Discussion started by: DStewart
7 Replies

3. UNIX for Dummies Questions & Answers

macro

Can I create a macro in UNIX? If so where do I find out how? (1 Reply)
Discussion started by: JD_Sal
1 Replies

4. UNIX for Dummies Questions & Answers

F-key macro...

Hi everyone, What I am trying to do is assign a F-key a macro to save a file in vi and display said file in firefox. The details are as follows: I am using a Win 7 laptop with and ssh program to log into a unix system. What I am trying to do is figure out how to bring up the firefox... (1 Reply)
Discussion started by: csharp100
1 Replies

5. Shell Programming and Scripting

Unix macro help

Hi, I just opened one old RH box and found number of "macros" in there, that how they called in how-to doc, let say you type <rx> and this does a lot of stuff. I can't figure out how it work, how I can edit/display these macros? Can anybody point to the right directions? I have some academic... (3 Replies)
Discussion started by: trento17
3 Replies

6. Linux

how to enable #ifdef macro in the command line of make?

Linux, C++, make, macro In source code, we used some #ifdef macros. How can I enable #ifdef macro in the command line of "make" (NOTE: I do NOT want to change source code or makefile to define that macro from time to time). e.g. test.cpp: ... #ifdef TEST1 // code segment for test1 ...... (3 Replies)
Discussion started by: princelinux
3 Replies

7. Programming

Regarding #ident macro

Hi, In my application I have some number c files. In each of the file the following line will be the first statement. #ident "@(#) set.c 14.1.2.2 05/15/01 17:06:32" I would like to know what is the use of the above statement. Thanks Sarwan (1 Reply)
Discussion started by: sarwan
1 Replies

8. Programming

macro

Can i define a macro for a function of 10 LOC. (9 Replies)
Discussion started by: bankpro
9 Replies

9. HP-UX

USRSTACK macro

I'm upleveling code from 10.20 to 11.11....but I'm running into a problem in which the USRSTACK macro does not seem to be defined in 11.11. Has anybody else experienced this/fixed it/worked around it? Is there a different macro I should be using instead? Thanks for any info you can provide!! (1 Reply)
Discussion started by: jalburger
1 Replies

10. UNIX for Dummies Questions & Answers

VI Macro Problem

I'm having a problem with a macro i put in my .exrc file. Here's what I put: map #I ^[ ^ [ is control-v and the escape key. It places a # a the beginning of a line by simply hitting the # on the keyboard. Problem is, now when I hit "o" or "O" to move up or down a line, it places a # at... (1 Reply)
Discussion started by: Atama
1 Replies

Featured Tech Videos