summaryrefslogtreecommitdiff
path: root/plugins/TrafficCounter/makefile_gcc
diff options
context:
space:
mode:
authorVlad Mironov <mironych@googlemail.com>2014-05-26 07:14:46 +0000
committerVlad Mironov <mironych@googlemail.com>2014-05-26 07:14:46 +0000
commitff2c1ae9669e5b164a36bd372729948537110928 (patch)
tree50a26632f5d916f0a3a904a753c25ca4a87f8e8c /plugins/TrafficCounter/makefile_gcc
parent5a5375019687667b06b011958c7cf595e1a80e0b (diff)
another gcc compilation fix
git-svn-id: http://svn.miranda-ng.org/main/trunk@9311 1316c22d-e87f-b044-9b9b-93d7a3e3ba9c
Diffstat (limited to 'plugins/TrafficCounter/makefile_gcc')
-rw-r--r--plugins/TrafficCounter/makefile_gcc78
1 files changed, 78 insertions, 0 deletions
diff --git a/plugins/TrafficCounter/makefile_gcc b/plugins/TrafficCounter/makefile_gcc
new file mode 100644
index 0000000000..5baf60ce0e
--- /dev/null
+++ b/plugins/TrafficCounter/makefile_gcc
@@ -0,0 +1,78 @@
+ifndef CFG
+ $(error Specify configuration: CFG=Release|Debug)
+endif
+
+COMPILER_OPTS = -c -Wall -fmessage-length=0 -fpermissive -fno-exceptions \
+ -DUNICODE -D_UNICODE
+INCLUDE_PATH = -I../../Include -I../../Include/msapi -I../ExternalAPI
+LINKER_OPTS = -nostartfiles -nodefaultlibs -nostdlib -shared -Wl,-Map,$(OUTDIR)/$(PROJECT_NAME).map -Wl,-e,_DllMain@12
+LIBRARIES = -lgcc -lmsvcrt -lkernel32 -lshell32 -luser32 -lcomctl32 -lgdi32 -lmsimg32 -loleaut32 $(FINDIR)/lib/mir_core.lib
+
+ifeq ($(CFG), Release)
+ COMPILER_OPTS += -O2 -Os -DNDEBUG
+ LINKER_OPTS += -s
+else
+ ifeq ($(CFG), Debug)
+ COMPILER_OPTS += -O0 -g3 -D_DEBUG
+ else
+ $(error Invalid configuration specfied: $(CFG))
+ endif
+endif
+
+PROJECT_NAME = TrafficCounter
+SRCDIR = src
+OUTDIR = $(CFG)
+FINDIR = ../../bin
+OUTNAME = $(FINDIR)/$(CFG)/Plugins/$(PROJECT_NAME).dll
+
+COMPILER = gcc
+LINKER = gcc
+RSC = windres
+
+SRCS = $(SRCDIR)/TrafficCounter.cpp \
+ $(SRCDIR)/misc.cpp \
+ $(SRCDIR)/options.cpp \
+ $(SRCDIR)/opttree.cpp \
+ $(SRCDIR)/statistics.cpp \
+ $(SRCDIR)/vars.cpp
+
+OBJECTS = $(OUTDIR)/TrafficCounter.obj \
+ $(OUTDIR)/misc.obj \
+ $(OUTDIR)/options.obj \
+ $(OUTDIR)/opttree.obj \
+ $(OUTDIR)/statistics.obj \
+ $(OUTDIR)/vars.obj \
+ $(OUTDIR)/resource.res
+
+DEPFILE = $(OUTDIR)/$(PROJECT_NAME).dep
+
+ALL: $(OUTDIR) depfile
+ @$(MAKE) USE_DEPFILE=1 -f makefile_gcc build
+ @echo Done.
+
+$(OUTDIR):
+ @mkdir -pv $(OUTDIR)
+
+.PHONY: depfile
+depfile:
+ @echo Rebuilding dependencies...
+ $(COMPILER) -MM $(INCLUDE_PATH) $(SRCS) > $(DEPFILE)
+
+.PHONY: build
+build: $(OUTNAME)
+
+$(OUTNAME): $(OBJECTS)
+ @echo Building $(OUTNAME)...
+ @$(LINKER) $(LINKER_OPTS) $(LIBRARIES_PATH) -o $(OUTNAME) $(OBJECTS) $(LIBRARIES)
+
+ifdef USE_DEPFILE
+ include $(DEPFILE)
+endif
+
+$(OUTDIR)/%.obj : $(SRCDIR)/%.cpp
+ @echo Compliling $<
+ @$(COMPILER) $(INCLUDE_PATH) -o $@ $(COMPILER_OPTS) $<
+
+$(OUTDIR)/%.res : res/%.rc
+ @echo Compiling resources...
+ @$(RSC) $(INCLUDE_PATH) -i $< -o $@ -J RC -O COFF -c 0x4E3