Sponsored Content
Top Forums Programming question on conditional compilation Post 302136404 by the_learner on Monday 17th of September 2007 03:53:26 PM
Old 09-17-2007
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.
 

10 More Discussions You Might Find Interesting

1. Programming

compilation problem

i have a class name 1.c in tht i am using function n wich has his body in 2.c and declaration in 2.h now how can i compile 1.c. ex; 1.c int main() { //some data n(10); //somedata } ***** 2.c int n(int k) { //some data } int main() { some data (2 Replies)
Discussion started by: phani_sree
2 Replies

2. 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

3. 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

4. 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

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. 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

7. 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

8. 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

9. Programming

Compilation C program

Hi guys... Im trying to compile a program written in C.. I am able to compile it to X86, especifically Ubuntu.. But i cant compile it to mips ar71xx architecture.. im using mips-linux-uclibc-gcc cross compiler. this is the portion of code: //STAT: LOGIN INFO // 3. login info i =... (3 Replies)
Discussion started by: lordtrex
3 Replies

10. 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
H2PH(1) 						 Perl Programmers Reference Guide						   H2PH(1)

NAME
h2ph - convert .h C header files to .ph Perl header files SYNOPSIS
h2ph [-d destination directory] [-r | -a] [-l] [headerfiles] DESCRIPTION
h2ph converts any C header files specified to the corresponding Perl header file format. It is most easily run while in /usr/include: cd /usr/include; h2ph * sys/* or cd /usr/include; h2ph * sys/* arpa/* netinet/* or cd /usr/include; h2ph -r -l . The output files are placed in the hierarchy rooted at Perl's architecture dependent library directory. You can specify a different hier- archy with a -d switch. If run with no arguments, filters standard input to standard output. OPTIONS
-d destination_dir Put the resulting .ph files beneath destination_dir, instead of beneath the default Perl library location ($Config{'installsit- search'}). -r Run recursively; if any of headerfiles are directories, then run h2ph on all files in those directories (and their subdirectories, etc.). -r and -a are mutually exclusive. -a Run automagically; convert headerfiles, as well as any .h files which they include. This option will search for .h files in all direc- tories which your C compiler ordinarily uses. -a and -r are mutually exclusive. -l Symbolic links will be replicated in the destination directory. If -l is not specified, then links are skipped over. -h Put ``hints'' in the .ph files which will help in locating problems with h2ph. In those cases when you require a .ph file containing syntax errors, instead of the cryptic [ some error condition ] at (eval mmm) line nnn you will see the slightly more helpful [ some error condition ] at filename.ph line nnn However, the .ph files almost double in size when built using -h. -D Include the code from the .h file as a comment in the .ph file. This is primarily used for debugging h2ph. -Q ``Quiet'' mode; don't print out the names of the files being converted. ENVIRONMENT
No environment variables are used. FILES
/usr/include/*.h /usr/include/sys/*.h etc. AUTHOR
Larry Wall SEE ALSO
perl(1) DIAGNOSTICS
The usual warnings if it can't read or write the files involved. BUGS
Doesn't construct the %sizeof array for you. It doesn't handle all C constructs, but it does attempt to isolate definitions inside evals so that you can get at the definitions that it can translate. It's only intended as a rough tool. You may need to dicker with the files produced. You have to run this program by hand; it's not run as part of the Perl installation. Doesn't handle complicated expressions built piecemeal, a la: enum { FIRST_VALUE, SECOND_VALUE, #ifdef ABC THIRD_VALUE #endif }; Doesn't necessarily locate all of your C compiler's internally-defined symbols. perl v5.8.0 2003-02-18 H2PH(1)
All times are GMT -4. The time now is 09:25 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy