Mercurial > hg > nnchat
comparison Makefile.cross-mingw @ 712:3a3e4fc53ac7
Refactor the build system a bit.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 07 Dec 2022 13:19:25 +0200 |
parents | Makefile.w32@f1df1cf69a38 |
children | 93d0e1547842 |
comparison
equal
deleted
inserted
replaced
711:6b79b3438818 | 712:3a3e4fc53ac7 |
---|---|
1 ### | |
2 ### For Win32/Win64 version cross-compilation via MinGW | |
3 ### compiler suite under Linux/Unix | |
4 ### | |
5 # | |
6 # This Makefile assumes that you have MinGW installed under /usr | |
7 # the way Debian MinGW packages do. It also assumes that you have | |
8 # built/installed SDL2 and PDCurses 3.9 (SDL2 variant) under | |
9 # /usr/local (not /usr!) in similar fashion. | |
10 # | |
11 # For differing configurations you will have to either edit this | |
12 # file or alternatively provide make parameters, e.g. | |
13 # | |
14 # make -f Makefile.cross-mingw MINGW=64 BINTOOL_PREFIX=foo-bar-zoo | |
15 # | |
16 ifeq ($(MINGW),64) | |
17 BINTOOL_PREFIX ?= x86_64-w64-mingw32- | |
18 MINGW_SYS_PATH ?= /usr/x86_64-w64-mingw32 | |
19 MINGW_LOCAL_PATH ?= /usr/local/x86_64-w64-mingw32 | |
20 OBJPATH ?= ./obj/win64/ | |
21 else | |
22 BINTOOL_PREFIX ?= i686-w64-mingw32- | |
23 MINGW_SYS_PATH ?= /usr/i686-w64-mingw32 | |
24 MINGW_LOCAL_PATH ?= /usr/local/i686-w64-mingw32 | |
25 OBJPATH ?= ./obj/win32/ | |
26 endif | |
27 | |
28 BINPATH ?= ./exe/ | |
29 BINEXT ?= .exe | |
30 CC = $(BINTOOL_PREFIX)gcc | |
31 AR = $(BINTOOL_PREFIX)ar | |
32 RANLIB = $(BINTOOL_PREFIX)ranlib | |
33 RM ?= rm | |
34 DOC = $(BINPATH)/README.html | |
35 WINDRES ?= $(BINTOOL_PREFIX)windres | |
36 | |
37 | |
38 SDL_CFLAGS ?= $(shell $(MINGW_LOCAL_PATH)/bin/sdl2-config --cflags) | |
39 SDL_LDFLAGS ?= $(shell $(MINGW_LOCAL_PATH)/bin/sdl2-config --libs) | |
40 | |
41 CFLAGS += -mwindows -DTH_BYTEORDER=TH_LITTLE_ENDIAN -I$(MINGW_LOCAL_PATH)/include $(SDL_CFLAGS) | |
42 LDFLAGS += -lws2_32 -lole32 -mwindows $(MINGW_LOCAL_PATH)/lib/libpdcurses.a $(SDL_LDFLAGS) | |
43 LDFLAGS += -s | |
44 | |
45 CFLAGS += -DHAVE_STRING_H | |
46 CFLAGS += -DHAVE_INTTYPES_H | |
47 | |
48 | |
49 ### | |
50 ### Miscellaneous | |
51 ### | |
52 EXTRAOBJS = $(OBJPATH)resource.o | |
53 ICON = resource.ico | |
54 | |
55 include Makefile.gen | |
56 | |
57 $(OBJPATH)resource.rc: resource.rc.in $(ICON) VERSION | |
58 sed -e "s/@VERSION@/$(NN_VERSION)/g;s/@VERSION_COM@/$(NN_VERSION_COM)/g;s/@ICON@/$(ICON)/g;s#@EXE@#$(notdir $(NNCHAT_BIN))#g" < $< > $@ | |
59 | |
60 $(OBJPATH)resource.o: $(OBJPATH)resource.rc | |
61 $(WINDRES) $< -O coff -o $@ | |
62 |