-
Notifications
You must be signed in to change notification settings - Fork 13
/
Makefile.vc6
106 lines (92 loc) · 2.15 KB
/
Makefile.vc6
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
#
# libics: Image Cytometry Standard file reading and writing.
#
# Copyright (C) 2000-2013, 2016 Cris Luengo and others
# Copyright 2015, 2016:
# Copyright 2015, 2016:
# Scientific Volume Imaging Holding B.V.
# Hilversum, The Netherlands.
# https://www.svi.nl
#
# Makefile to compile libics under Win32 with Visual C++ 5 / 6
#
#
# TO COMPILE:
# nmake /f Makefile.vc
# For a dynamic library:
# nmake /f Makefile.vc dynamic
#
# Remove the following line to disable ZLIB support
#
ZLIB_SUPPORT = 1
#
# Paths
#
MSVC_ROOT = $(MSVCDIR)
MSVC_LIB = $(MSVCDIR)\lib
LIBPATH = .
ZLIB_PATH = ..\vc_zlib-1.2.3
ZLIB_LIB = $(ZLIB_PATH)\zlib.lib
#
# Microsoft C++ tools
#
CC = cl /c
LIB = lib
LINK = link /DLL
#
# Other Defines
#
LIBNAME = $(LIBPATH)\libics.lib
DLLNAME = $(LIBPATH)\libics.dll
DLLIMPNAME = $(LIBPATH)\libics.dll.lib
LIBOBJECTS = libics_read.obj \
libics_write.obj \
libics_binary.obj \
libics_gzip.obj \
libics_compress.obj \
libics_data.obj \
libics_util.obj \
libics_top.obj \
libics_history.obj \
libics_preview.obj \
libics_sensor.obj \
libics_test.obj
#
# Options
#
DEFINES = /DWIN32 /DBUILD_ICSLIB
INCLUDE = /I. /I"$(MSVC_ROOT)\include"
CFLAGS = /nologo /YX /Op /Zp8 /Gd /W3
!ifdef DEBUG
CFLAGS = $(CFLAGS) /MDd /LDd /Gm /Zi /Od
!else
CFLAGS = $(CFLAGS) /MD /LD /O2 /Ob2 /G5 /GD
!endif
!ifdef ZLIB_SUPPORT
DEFINES = $(DEFINES) /DICS_ZLIB
INCLUDE = $(INCLUDE) /I"$(ZLIB_PATH)"
LIBS = $(LIBS) "$(ZLIB_LIB)"
!endif
#
# Dependency List
#
all : static
static : libics_conf.h $(LIBNAME)
dynamic : libics_conf.h $(DLLNAME)
$(LIBNAME) : $(LIBOBJECTS)
@if not exist $(LIBPATH) md $(LIBPATH)
@$(LIB) /out:$@ $** $(LIBS)
$(DLLNAME) : $(LIBOBJECTS)
@if not exist $(LIBPATH) md $(LIBPATH)
$(LINK) $** $(LIBS) /OUT:$@ /LIBPATH:"$(MSVC_LIB)" /IMPLIB:$(DLLIMPNAME)
.c.obj:
@$(CC) $(CFLAGS) $(DEFINES) $(INCLUDE) /Fo$@ $**
libics_conf.h : libics_conf.h.in
@copy libics_conf.h.in libics_conf.h
clean :
@-del /q *.obj
@-del /q *.pch
@-del /q $(LIBNAME)
@-del /q $(DLLNAME)
@-del /q $(DLLNAME).exp
@-del /q $(DLLIMPNAME)