diff options
author | eutarass | 2008-09-22 18:28:12 +0000 |
---|---|---|
committer | eutarass | 2008-09-22 18:28:12 +0000 |
commit | a3e68f01b6d211fc5832e695037a562a7a65af2d (patch) | |
tree | 8ce854545c847075c20b5e1373b768bf617337c1 /examples | |
parent | 6b640dd701f8793fb43f2cdd4f8721c0342af80e (diff) | |
download | org.eclipse.tcf-a3e68f01b6d211fc5832e695037a562a7a65af2d.tar.gz org.eclipse.tcf-a3e68f01b6d211fc5832e695037a562a7a65af2d.tar.xz org.eclipse.tcf-a3e68f01b6d211fc5832e695037a562a7a65af2d.zip |
Better support for TCF Agent portability:
1. Changed TCF Agent Makefile to use different output directories for different build targets.
2. Agent binary files are now created in "<OS name>/<CPU name>/<Debug|Release>" directories.
3. Changed agent CDT project file to include multiple build configurations: Cygwin Debug, Cygwin Release, Msys Debug, etc.
Diffstat (limited to 'examples')
-rw-r--r-- | examples/org.eclipse.tm.tcf.examples.daytime.agent/Makefile | 50 |
1 files changed, 32 insertions, 18 deletions
diff --git a/examples/org.eclipse.tm.tcf.examples.daytime.agent/Makefile b/examples/org.eclipse.tm.tcf.examples.daytime.agent/Makefile index 6e4e99dd7..188feb701 100644 --- a/examples/org.eclipse.tm.tcf.examples.daytime.agent/Makefile +++ b/examples/org.eclipse.tm.tcf.examples.daytime.agent/Makefile @@ -1,35 +1,49 @@ -CC=gcc -CFLAGS=-g -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -Wmissing-prototypes -I. -I../../agent -I- +CONF=Debug -CFILES=$(basename $(wildcard *.c)) $(basename $(notdir $(wildcard ../../agent/*.c))) -OFILES=$(filter-out main%.o, $(addsuffix .o, $(CFILES))) -HFILES=$(wildcard *.h) $(wildcard ../../agent/*.h) Makefile - -EXES=agent - -UNAME=$(shell uname -o) +CC=gcc +ifeq ($(CONF),Debug) +CFLAGS=-g +else +CFLAGS=-O +endif +CFLAGS:=$(CFLAGS) -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_GNU_SOURCE -Wmissing-prototypes -I. -I../../agent -I- -ifeq ($(UNAME),Cygwin) +OPSYS=$(shell uname -o) +MACHINE=$(shell uname -m) +ifeq ($(OPSYS),Cygwin) LIBS=-lws2_32 -liphlpapi else -ifeq ($(UNAME),Msys) +ifeq ($(OPSYS),Msys) CFLAGS:=-mwin32 $(CFLAGS) LIBS=-lws2_32 -liphlpapi else -LIBS=-lpthread -lrt -lelf +LIBS=-lpthread -lrt endif endif -all: $(EXES) +BINDIR=$(OPSYS)/$(MACHINE)/$(CONF) + +CFILES=$(basename $(wildcard *.c)) $(basename $(notdir $(wildcard ../../agent/*.c))) +OFILES=$(addprefix $(BINDIR)/,$(filter-out main%.o, $(addsuffix .o, $(CFILES)))) +HFILES=$(wildcard *.h) $(wildcard ../../agent/*.h) Makefile + +EXECS=$(BINDIR)/agent + +all: $(EXECS) + +$(BINDIR)/libtcf.a : $(OFILES) + ar -rc $@ $(OFILES) -agent: main.o $(OFILES) - $(CC) $(CFLAGS) -o $@ main.o $(OFILES) $(LIBS) +$(BINDIR)/agent: $(BINDIR)/main.o $(BINDIR)/libtcf.a + $(CC) $(CFLAGS) -o $@ $(BINDIR)/main.o $(BINDIR)/libtcf.a $(LIBS) -%.o: %.c $(HFILES) +$(BINDIR)/%.o: %.c $(HFILES) $(BINDIR) + @mkdir -p $(BINDIR) $(CC) $(CFLAGS) -c -o $@ $< -%.o: ../../agent/%.c $(HFILES) +$(BINDIR)/%.o: ../../agent/%.c $(HFILES) + @mkdir -p $(BINDIR) $(CC) $(CFLAGS) -c -o $@ $< clean: - rm -f *.o $(EXES) + rm -rf $(BINDIR) |