• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1
2SRCDIR = ..\libmpdec
3LIBSTATIC = libmpdec-4.0.0.lib
4LIBSHARED = libmpdec-4.0.0.dll
5LIBIMPORT = libmpdec-4.0.0.dll.lib
6
7SRCDIR_CXX = ..\libmpdec++
8LIBSTATIC_CXX = libmpdec++-4.0.0.lib
9LIBSHARED_CXX = libmpdec++-4.0.0.dll
10LIBIMPORT_CXX = libmpdec++-4.0.0.dll.lib
11
12!if "$(DEBUG)" == "1"
13OPT = /MTd /Od /Zi /EHsc
14OPT_SHARED = /MDd /Od /Zi /EHsc
15!else
16OPT = /MT /O2 /GS /EHsc /DNDEBUG
17OPT_SHARED = /MD /O2 /GS /EHsc /DNDEBUG
18!endif
19
20!if "$(CC)" == "clang-cl"
21WARN = /W4 /wd4200 /wd4204 /wd4221 /wd4714 -Wno-undefined-inline /D_CRT_SECURE_NO_WARNINGS
22!else
23WARN = /W4 /wd4200 /wd4204 /wd4221 /wd4714 /D_CRT_SECURE_NO_WARNINGS
24!endif
25
26MPD_CXXFLAGS = $(WARN) /nologo $(OPT)
27MPD_CXXFLAGS_SHARED = $(WARN) /nologo $(OPT_SHARED)
28
29
30default: runtest runtest_shared apitest apitest_shared copy_dll
31
32
33runtest:\
34Makefile runtest.cc test.cc $(SRCDIR)\mpdecimal.h $(SRCDIR_CXX)\decimal.hh test.hh vctest.hh \
35$(SRCDIR)\$(LIBSTATIC) $(SRCDIR_CXX)\$(LIBSTATIC_CXX)
36	$(CXX) -I$(SRCDIR) -I$(SRCDIR_CXX) $(MPD_CXXFLAGS) /Fe:runtest runtest.cc test.cc $(SRCDIR_CXX)\$(LIBSTATIC_CXX) $(SRCDIR)\$(LIBSTATIC)
37
38runtest_shared:\
39Makefile runtest.cc test.cc $(SRCDIR)\mpdecimal.h $(SRCDIR_CXX)\decimal.hh test.hh vctest.hh \
40$(SRCDIR_CXX)\$(LIBIMPORT_CXX) $(SRCDIR)\$(LIBIMPORT)
41	$(CXX) -I$(SRCDIR) -I$(SRCDIR_CXX) $(MPD_CXXFLAGS_SHARED) /Fe:runtest_shared runtest.cc test.cc $(SRCDIR_CXX)\$(LIBIMPORT_CXX) $(SRCDIR)\$(LIBIMPORT)
42
43
44apitest:\
45Makefile apitest.cc test.cc $(SRCDIR)\mpdecimal.h $(SRCDIR_CXX)\decimal.hh test.hh vctest.hh \
46$(SRCDIR_CXX)\$(LIBSTATIC_CXX) $(SRCDIR)\$(LIBSTATIC)
47	$(CXX) -I$(SRCDIR) -I$(SRCDIR_CXX) $(MPD_CXXFLAGS) /Fe:apitest apitest.cc test.cc $(SRCDIR_CXX)\$(LIBSTATIC_CXX) $(SRCDIR)\$(LIBSTATIC)
48
49apitest_shared:\
50Makefile apitest.cc test.cc $(SRCDIR)\mpdecimal.h $(SRCDIR_CXX)\decimal.hh test.hh vctest.hh \
51$(SRCDIR_CXX)\$(LIBIMPORT_CXX) $(SRCDIR)\$(LIBIMPORT)
52	$(CXX) -I$(SRCDIR) -I$(SRCDIR_CXX) $(MPD_CXXFLAGS_SHARED) /Fe:apitest_shared apitest.cc test.cc $(SRCDIR_CXX)\$(LIBIMPORT_CXX) $(SRCDIR)\$(LIBIMPORT)
53
54
55FORCE:
56
57copy_dll:
58	copy /y "$(SRCDIR)\$(LIBSHARED)" .
59	copy /y "$(SRCDIR_CXX)\$(LIBSHARED_CXX)" .
60
61clean: FORCE
62	-@if exist *.obj del *.obj
63	-@if exist *.dll del *.dll
64	-@if exist *.exp del *.exp
65	-@if exist *.lib del *.lib
66	-@if exist *.ilk del *.ilk
67	-@if exist *.pdb del *.pdb
68	-@if exist *.pgc del *.pgc
69	-@if exist *.pgd del *.pgd
70	-@if exist *.manifest del *.manifest
71	-@if exist *.exe del *.exe
72	-@if exist runtest del runtest
73	-@if exist apitest del apitest
74
75distclean: FORCE
76	nmake clean
77	-@if exist testdata rd /q /s testdata
78	-@if exist Makefile del Makefile
79
80