question on conditional compilation


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
# 1  
question on conditional compilation

Hey, can I #define something outside the source file ?

I have a C program which uses #ifdef..

Code:
#ifdef ABC
 ... do this..
#else
 ... that ...
#endif

The usual way that I know of defining ABC is in the source/header file

Code:
#define ABC

But is there any other way to do that ? Maybe as an option to pass to the compiler ?

The reason is, I just want to run one script/makefile which will compile both versions of the progra, with ABC defined and without ABC defined.. without having to make changes in the source code.
# 2  
Indeed there are more options.

1. Put the define in a common include file, such as 'config.h'

2. Put the define in a compiler option, normally it's

Code:
$(CC) $(CFLAGS)  -DMYDEFINE[=myvalue] ....

3. Put the define in a makefile variable

Code:
CFLAGS=$(CFLAGS) -DMYDEFINE[=myvalue]

# 3  
Thanks buddy !!
Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Computers #68
Difficulty: Easy
Awk is abbreviated from the names of the developers - Aho, Weinberger, and Kernighan.
True or False?

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Conditional IF Question

I trying to get a simple script to see if a directory contains any files in it. I am failing on the conditional IF statement. I am not sure if it because the command I am using is creating the variable as a string or if it is numeric or if I just have the syntax wrong. #!/usr/bin/ksh... (2 Replies)
Discussion started by: awkwardone
2 Replies

2. Shell Programming and Scripting

Compilation

Hi All, Do we have a way to compile a shell program? I am using ksh/bash/sh and not CSH. Cheers Ravi (12 Replies)
Discussion started by: panyam
12 Replies

3. Shell Programming and Scripting

Easy if conditional question.

I'm just starting this whole scripting thing, and I'm trying to write a simple script which will ask the user to press a key between 3-7. If they press a key that's not between 3-7, it will tell the user such. Here's my script: #!/bin/bash blah=1 echo -n "Press a key from 3-7." read... (3 Replies)
Discussion started by: SlickStretch
3 Replies

4. Programming

C Compilation problem

Dear all I am new to C programming In response to the post cat get_time.c #include <stdlib.h> #include <sys/time.h> main() { struct timeval tv; struct timezone tz; struct tm *tm; gettimeofday(&tv, &tz); tm=localtime(&tv.tv_sec); printf("... (2 Replies)
Discussion started by: on9west
2 Replies

5. Programming

Conditional Compilation based on Environmental Variable in Unix

I want to be able to access an environment variable to control how a program is compiled. So: export MY_VERSN=9 Then ideally, within my C++ code, I would have #if MY_VERSN = 9 iret = FRED9() #else iret = FRED() #endif The way I thought I could do it is that in the script that... (2 Replies)
Discussion started by: BrighterLater
2 Replies

6. UNIX for Advanced & Expert Users

Makefile conditional compilation giving error

Hi , Please answer my query: I want to create a common make file for one of mylibrary such that it should work on both Sun as well as Linux on 32 and 64 bit system. The flow is sth like this: .............. .............. if$(OS) == solaris BINDIR= ../../lib/solaris/64 else BINDIR=... (1 Reply)
Discussion started by: unisuraj
1 Replies

7. UNIX for Dummies Questions & Answers

Compilation

Hi All, We have a C program existing in one of the folders which I have to modify a lil bit, When I'm trying to compile the program using GCC or CC command its showing as ksh: gcc: not found is that mean there is no compiler or do I have to verify for something, please advice Thank... (2 Replies)
Discussion started by: diggermf
2 Replies

8. Programming

C Question compilation error

What does the following mean: state_field state_abvr = { "AL","ALABAMA", "AK","ALASKA", . . . }; extern state_field state_abvr; issues we I am facing following compilation issue bosdf9d1:root make CC -I/bto/bcs/shared/include -I/bto/sys/BCS/usr/include ... (1 Reply)
Discussion started by: jaganreddy
1 Replies

9. UNIX for Dummies Questions & Answers

Compilation Options

hi, currently I have Fedora Core 7 and I use the Compiler ported with FC7. i.e "cc src.c". but I am unable to explore the Compilation Options that can be passed with cc... like cc -c and options like that.. but when I tried man cc, I did not find any mnaual page for CC.. so now how do... (2 Replies)
Discussion started by: compbug
2 Replies

10. UNIX for Dummies Questions & Answers

Kernel compilation

I have re-compiled kernel source code available in /usr/src/linux.2.4.20 with "make" command. The compilation is succesful. Now the problem is create the image for this. The documentation in the same folder says that now you have compile "make image". There is no option for image in Makefile. ... (3 Replies)
Discussion started by: mankrish
3 Replies

Featured Tech Videos