blob: 891a321a44c7001c1950a3dc7452adcc741adff2 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
# flext - C++ layer for Max/MSP and pd (pure data) externals
# Copyright (c) 2001-2003 Thomas Grill (xovo@gmx.net)
#
# ----- for internal use ----------------------
#
!include config-pd-msvc.txt
# source files
SOURCE=source
# includes
INCPATH=/I$(MSVCPATH)\include /I$(PDPATH)\src /I$(SOURCE)
!ifdef SNDOBJ
INCPATH=$(INCPATH) /I$(SNDOBJ)
!endif
!ifdef STK
INCPATH=$(INCPATH) /I$(STK)
!endif
# compiler definitions and flags
DEFS=/DFLEXT_SYS=2
CFLAGS=/GX- /GD /G6
OFLAGS=/Ox
DFLAGS=/Od /Zi
TARGET=pdwin # appendix to lib name
!ifdef FLEXT_THREADS
DEFS=$(DEFS) /DFLEXT_THREADS
!ifndef _DEBUG
CFLAGS=$(CFLAGS) $(OFLAGS) /MT
OBJPATH=t
!else
CFLAGS=$(CFLAGS) $(DFLAGS) /MTd
OBJPATH=td
!endif
!else
!ifndef _DEBUG
CFLAGS=$(CFLAGS) $(OFLAGS) /ML
OBJPATH=s
!else
CFLAGS=$(CFLAGS) $(DFLAGS) /MLd
OBJPATH=sd
!endif
!endif
# the rest can stay untouched
# ----------------------------------------------
# all the source files from the package
!include make-files.txt
!ifdef SNDOBJ
SRCS=$(SRCS) $(SRCS_SNDOBJ)
HDRS=$(HDRS) $(HDRS_SNDOBJ)
!endif
!ifdef STK
SRCS=$(SRCS) $(SRCS_STK)
HDRS=$(HDRS) $(HDRS_STK)
!endif
#default target
all: $(OUTPATH)\$(NAME)-$(TARGET).lib
# remove build
clean:
-cd $(OUTPATH)
-del /s /q $(OBJPATH) > nul
-rmdir $(OBJPATH)
-cd ..
-del /q $(OUTPATH)\$(NAME)-$(TARGET).lib > nul
-rmdir $(OUTPATH)
# -----------------------------------------------
OBJS= $(SRCS:.cpp=.obj)
{$(SOURCE)\}.cpp.obj:
@-if not exist $(OUTPATH) mkdir $(OUTPATH)
@cd $(OUTPATH)
@-if not exist $(OBJPATH) mkdir $(OBJPATH)
@cd ..
cl /c $(CFLAGS) $(DEFS) $(INCPATH) /Fo$(OUTPATH)\$(OBJPATH)\$@ $<
$(OUTPATH)\$(NAME)-$(TARGET).lib: $(OBJS)
@cd $(OUTPATH)\$(OBJPATH)
lib /OUT:..\$(NAME)-$(TARGET).lib $**
@cd ..\..
!ifdef INSTDIR
@-if not exist $(OBJPATH) mkdir $(INSTDIR)
copy $(OUTPATH)\$(NAME)-$(TARGET).lib $(INSTDIR) > nul
copy $(SOURCE)\*.h $(INSTDIR) > nul
!endif
|