tusharfloyd
tusharfloyd

Reputation: 1972

Compiler options selective application

can compiler options be applied selectively on my files? I want some files to be covered by some option but not the other files.

Upvotes: 0

Views: 74

Answers (2)

sehe
sehe

Reputation: 393613

Guessing that you might be using Make files:

This should get you started: Note how -fopenmp gets added just for source2.c

CC=gcc
SRC=source1.c source2.c
OBJ=$(patsubst %.c,%.o,$(SRC))
EXE=source1.exe
FLAGS= -g -O2

source2.o: FLAGS+=-fopenmp

all: $(EXE)

$(EXE): $(OBJ)
    $(CC) -o $@ $^ $(FLAGS)

%.o: %.c
    $(CC) -c -o $@ $^ $(FLAGS)

clean:
    rm $(EXE)$

Output of make -Bsn:

gcc -o source1.o source1.c -g -O2
gcc -o source2.o source2.c -g -O2 -fopenmp
gcc -o source1 source1.o source2.o -g -O2

Upvotes: 1

James Kanze
James Kanze

Reputation: 154007

Of course. You invoke the compiler, and you can tell it what you want.

Some tools may add some restrictions; Visual Studio, as far as I know, only allows specifying options at the project level. But that's an artificial restriction of the tool (and I'm sure there are ways around it—I just don't know them).

Upvotes: 0

Related Questions