joachim99@77: # Project: Clearcase install helper joachim99@77: # Generates ccinstallhelper.dll with gcc. joachim99@77: # Can be used for Cygwin and MingW (MingW ignores -mno-cygwin) joachim99@77: # joachim99@77: PROJ := ccinstallhelper joachim99@77: joachim99@77: CXX ?= g++.exe joachim99@77: joachim99@77: ifdef DEBUG joachim99@77: CXXFLAGS ?= -g joachim99@77: else joachim99@77: CXXFLAGS ?= -Os joachim99@77: LDFLAGS += -s joachim99@77: endif joachim99@77: CXXFLAGS += -ansi -pedantic -Wall -W joachim99@77: LIBS := -luuid -lole32 joachim99@77: DEFFILE = $(PROJ).def joachim99@77: STATICLIB = $(PROJ).a joachim99@77: EXPLIB = $(PROJ).exp joachim99@77: joachim99@77: SRC-CXX = $(wildcard *.cpp) joachim99@77: SRC-RC = $(wildcard *.rc) joachim99@77: joachim99@77: OBJ := $(SRC-CXX:.cpp=.o) joachim99@77: RES := $(SRC-RC:.rc=.res) joachim99@77: OBJ += $(RES) joachim99@77: DLL := $(PROJ).dll joachim99@77: joachim99@77: .PHONY: all clean joachim99@77: joachim99@77: .SUFFIXES: .rc .res joachim99@77: joachim99@77: all: .depend $(DLL) joachim99@77: joachim99@77: debug: joachim99@77: $(MAKE) DEBUG=YES UNICODE=YES joachim99@77: joachim99@77: release: joachim99@77: $(MAKE) joachim99@77: joachim99@77: .depend: Makefile $(SRC-RC) $(SRC-CXX) joachim99@77: $(CXX) -M $(CXXFLAGS) $(SRC-RC) $(SRC-CXX) > .depend joachim99@77: joachim99@77: include .depend joachim99@77: joachim99@77: clean: clean-custom joachim99@77: ${RM} $(OBJ) $(DLL) ${EXPLIB} $(STATICLIB) joachim99@77: joachim99@77: $(DLL): $(OBJ) joachim99@77: dllwrap.exe \ joachim99@77: --mno-cygwin \ joachim99@77: --def $(DEFFILE) \ joachim99@77: --output-exp ${EXPLIB} \ joachim99@77: --driver-name c++ -L/usr/local/lib -L/usr/lib/mingw \ joachim99@77: --implib $(STATICLIB) \ joachim99@77: $(OBJ) $(LDFLAGS) $(LIBS) \ joachim99@77: -o $@ joachim99@77: joachim99@77: .cpp.o: joachim99@77: $(CXX) $(CXXFLAGS) -c $< -o $@ joachim99@77: joachim99@77: .rc.res: joachim99@77: windres.exe $< -J rc -o $@ -O coff -DMING