aboutsummaryrefslogtreecommitdiffstats
path: root/lib/ic/c_src/Makefile.win32
blob: 670a17f9589dbc2765d7d8d4d2e156405b747e02 (plain) (blame)
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
107
108
109
#
# %CopyrightBegin%
# 
# Copyright Ericsson AB 1999-2016. All Rights Reserved.
# 
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# 
# %CopyrightEnd%
#
#

CC = cl.exe
LIBRARIAN = lib.exe /nologo

IC_INCLUDE = ..\include
EI_INCLUDE = \erts\lib\erl_interface\src

CFLAGS = /MT /nologo /Ox /I$(IC_INCLUDE) /I$(EI_INCLUDE)
TARGET = win32
OBJDIR = ..\priv\obj\$(TARGET)
LIBDIR = ..\priv\lib\$(TARGET)


C_FILES = \
	ic.c \
	oe_ei_encode_version.c      \
	oe_ei_encode_long.c         \
	oe_ei_encode_ulong.c        \
	oe_ei_encode_double.c       \
	oe_ei_encode_char.c         \
	oe_ei_encode_string.c       \
	oe_ei_encode_atom.c         \
	oe_ei_encode_pid.c          \
	oe_ei_encode_port.c         \
	oe_ei_encode_ref.c          \
	oe_ei_encode_term.c         \
	oe_ei_encode_tuple_header.c \
	oe_ei_encode_list_header.c  \
	oe_ei_encode_longlong.c     \
	oe_ei_encode_ulonglong.c    \
	oe_ei_encode_wchar.c        \
	oe_ei_encode_wstring.c      \
	oe_ei_decode_longlong.c     \
	oe_ei_decode_ulonglong.c    \
	oe_ei_decode_wchar.c        \
	oe_ei_decode_wstring.c

OBJ_FILES = \
	$(OBJDIR)\ic.obj \
	$(OBJDIR)\oe_ei_encode_version.obj      \
	$(OBJDIR)\oe_ei_encode_long.obj         \
	$(OBJDIR)\oe_ei_encode_ulong.obj        \
	$(OBJDIR)\oe_ei_encode_double.obj       \
	$(OBJDIR)\oe_ei_encode_char.obj         \
	$(OBJDIR)\oe_ei_encode_string.obj       \
	$(OBJDIR)\oe_ei_encode_atom.obj         \
	$(OBJDIR)\oe_ei_encode_pid.obj          \
	$(OBJDIR)\oe_ei_encode_port.obj         \
	$(OBJDIR)\oe_ei_encode_ref.obj          \
	$(OBJDIR)\oe_ei_encode_term.obj         \
	$(OBJDIR)\oe_ei_encode_tuple_header.obj \
	$(OBJDIR)\oe_ei_encode_list_header.obj  \
	$(OBJDIR)\oe_ei_encode_longlong.obj     \
	$(OBJDIR)\oe_ei_encode_ulonglong.obj    \
	$(OBJDIR)\oe_ei_encode_wchar.obj        \
	$(OBJDIR)\oe_ei_encode_wstring.obj      \
	$(OBJDIR)\oe_ei_decode_longlong.obj     \
	$(OBJDIR)\oe_ei_decode_ulonglong.obj    \
	$(OBJDIR)\oe_ei_decode_wchar.obj        \
	$(OBJDIR)\oe_ei_decode_wstring.obj


LIBRARY = $(LIBDIR)\ic.lib


all: $(OBJDIR) $(LIBDIR) $(LIBRARY)

release:
	echo "Nothing to do"

clean:
	-del $(OBJ_FILES) $(LIBRARY)

$(LIBRARY): $(OBJ_FILES)
	$(LIBRARIAN) /OUT:$@ $**
	
{}.c{$(OBJDIR)}.obj:
	$(CC) $(CFLAGS) /c /Fo$@ $<

$(OBJDIR):
	-mkdir $(OBJDIR)

$(LIBDIR):
	-mkdir $(LIBDIR)

$(LIBRARY): 


{}.c: $(EI_INCLUDE)\ei.h $(IC_INCLUDE)\ic.