1# 2# $Id: Makefile,v 1.28.2.2 2017/07/30 07:46:25 markisch Exp $ 3# 4# GNUPLOT Makefile Microsoft Visual C++ 2005 or newer 5 6# John Bollinger bbands@yahoo.com, 4 March 2002: 7# Added png support with zlib and libpng as subs of .\src 8# libpng and zlib can be downloaded from ftp://ftp.uu.net/graphics/png 9# Added pdf support with pdflib as a sub of .\src 10# pdflib can be downloaded from http://www.pdflib.com 11# Added MSC multi-thread support for compatibility with pdflib 12# Bastian Maerkisch bmaerkisch@web.de: 13# Added support for binary version of the GD library (bgd.dll) 14# gdlib can be downloaded from http://www.libgd.org/ 15# Development of libgd seems to have stalled: 16# Latest binary build can be found at http://www.libgd.org/releases/gd-latest-win32.zip 17# As of March 2011 this is version 2.0.34. 18# Removed zlib and libpng again as they're already included in bgd.dll 19# Hans-Bernhard Broeker: 20# updated to current version of MSVC 21# undid silly name change for pgnuplot.exe, call console version gnuplot.exe instead 22# removed remainder of wgnuplot_pipes.exe support 23# isolated more configuration-dependent parts (gd, pdf, wx) to lines of their own, 24# so they can be turned on/off more easily. 25# Bastian Maerkisch bmaerkisch@web.de: 26# Out of tree version. Moved to config\msvc 27# See ChangeLog for further changes. 28 29# 30# To compile with Visual C: 31# Optionally download gdlib to config\msvc\gdwin32 32# Optionally download pdflib to config\msvc\pdflib and compile it if you choose the source 33# 34# Start the Microsoft Visual C++ command shell (e.g. via link installed setup) 35# change to the gnuplot\config\msvc directory 36# Edit the Makefile to match your setup. (If you don't have the optional libraries, 37# you will probably have to disable some parts.) 38# Now run: 39# nmake 40# 41 42# Compilation options, disable by setting to zero 43# Is libgd available? (required by terminal png/jpeg/gif)? 44GDLIB = 0 45# Is pdflib available? (required by terminal pdf) 46PDFLIB = 0 47# Build wxt terminal? (requires GTK, wxWidgets, cairo and pango libraries) 48# See http://wiki.wxwidgets.org/Microsoft_Visual_C%2B%2B_Guide 49# http://wiki.wxwidgets.org/Visual_Studio_2008_%289.0%29 50WXT = 0 51# Build Cairo Terminals (cairolatex, epslatex, pdflatex) 52CAIRO = 0 53# Build qt terminal? 54QT = 0 55# Set to one if you have Qt5 (instead of Qt4) 56QT5 = 1 57# Build the lua/tikz terminal? 58LUA = 0 59# Build caca terminal? Requires libcaca 60# Requires libcaca version 0.99.beta15 or newer. A post-beta18 61# svn version is recommended since it contains an improved 62# win32 backend. 63CACA = 0 64 65# Create debug build? 66DEBUG = 0 67 68# Location of additional libraries 69#GDDIR = gdwin32 70#LUADIR = lua 71PDFDIR = pdflib 72#QTDIR = C:\Qt\4.8.4 73QTDIR = C:\Qt\5.8\msvc2015_64 74#CAIRODIR = cairo-pango 75#CACADIR = libcaca 76CAIRODIR = d:\msvc-libs 77LIBDIR = d:\msvc-libs 78 79 80# installation directory 81DESTDIR = "$(PROGRAMFILES)\gnuplot" 82 83TOP = ..\.. 84 85# directory for PostScript prolog and associated files 86GNUPLOT_PS_DIR = share\\PostScript 87 88# Similarly for javascript files for the canvas terminal: 89GNUPLOT_JS_DIR = share\\js 90 91# Similarly for scripts used by the lua terminal 92GNUPLOT_LUA_DIR = share\\lua 93 94# directory for Qt translation files 95GNUPLOT_QT_DIR = share\\qt 96 97# gnuplot will look for gnuplotrc here: 98GNUPLOT_SHARE_DIR = share 99 100#CC = cl 101LD = link 102 103# compiler flags 104# /I means extra include directory 105# /Fm means produce link map 106# /Od means suppress optimizations (esp. for debug) 107# /O2 means optimize for speed 108# /Zi means prepare for codeview 109# /MD means include multi-thread support (DLL) 110# /GR means Enable Run-Time Type Information 111!IF "$(DEBUG)" == "1" 112CBASEFLAGS = /EHsc /GR /MDd /Od /nologo /Zi 113!ELSE 114CBASEFLAGS = /EHsc /GR /MD /O2 /nologo 115!ENDIF 116CFLAGS = $(CBASEFLAGS) /I. /I$(TOP) /I$(S) /I$(T) /D_Windows /DWIN32 /DHAVE_CONFIG_H /D__MSC__ $(OPTIONS) 117CFLAGS = $(CFLAGS) /DUNICODE /D_UNICODE 118CFLAGS = $(CFLAGS) /DGNUPLOT_SHARE_DIR=\"$(GNUPLOT_SHARE_DIR)\" 119WIN_CFLAGS = 120CONSOLE_CFLAGS = /DWGP_CONSOLE 121OPTIONS = /DUSE_MOUSE /DPIPES 122OPTIONS = $(OPTIONS) /DGNUPLOT_HISTORY 123 124EXTRA_TARGETS = 125 126VERSION_CPPFLAGS = -DVERSION_MAJOR=\"5.2\" -DPATCHLEVEL=\"0\" 127 128# flags for terminals 129# see other terminal defines in term.h 130TERMFLAGS = /I$(T) /DGNUPLOT_PS_DIR=\"$(GNUPLOT_PS_DIR)\" /DGNUPLOT_JS_DIR=\"$(GNUPLOT_JS_DIR)\" 131 132# linker flags, append paths for external libs later 133LDFLAGS = /nologo /MACHINE:$(MACHINE) 134LDFLAGS = $(LDFLAGS) /MANIFEST:EMBED /MANIFESTINPUT:$(W)$(MANIFEST) 135!IF "$(DEBUG)" == "1" 136LDFLAGS = $(LDFLAGS) /DEBUG 137!ENDIF 138COMMONLIBS = kernel32.lib user32.lib gdi32.lib winspool.lib \ 139 comdlg32.lib comctl32.lib advapi32.lib shell32.lib \ 140 msimg32.lib gdiplus.lib shlwapi.lib \ 141 d2d1.lib dwrite.lib ole32.lib 142CONSOLELIBS = ole32.lib oleaut32.lib comctl32.lib 143 144!IFDEF LIBDIR 145OPTIONS = $(OPTIONS) /I$(LIBDIR)\include 146LDFLAGS = $(LDFLAGS) /libpath:$(LIBDIR)\lib 147!ENDIF 148 149!IF "$(GDLIB)" == "1" 150OPTIONS = $(OPTIONS) /DHAVE_LIBGD /DHAVE_GD_H /DHAVE_GD_GIF /DGIF_ANIMATION /DHAVE_GD_PNG /DHAVE_GD_JPEG /DHAVE_GD_TTF 151!IFDEF GDDIR 152OPTIONS = $(OPTIONS) /I$(GDDIR)\include 153LDFLAGS = $(LDFLAGS) /libpath:$(GDDIR)\lib 154!ENDIF 155!ENDIF 156 157!IF "$(PDFLIB)" == "1" 158OPTIONS = $(OPTIONS) /DHAVE_LIBPDF 159!IFDEF PDFDIR 160LDFLAGS = $(LDFLAGS) /libpath:$(PDFDIR)\pdflib 161TERMFLAGS = $(TERMFLAGS) /I$(PDFDIR)\pdflib 162!ENDIF 163!ENDIF 164 165!IF ("$(CAIRO)" == "1") || ("$(WXT)" == "1") 166CAIROLIBS = glib-2.0.lib gobject-2.0.lib gmodule-2.0.lib \ 167 cairo.lib pango-1.0.lib pangocairo-1.0.lib 168CFLAGS = $(CFLAGS) /DHAVE_CAIROPDF 169TERMFLAGS = $(TERMFLAGS) /DHAVE_CAIROEPS 170!IFDEF CAIRODIR 171CFLAGS = $(CFLAGS) /I$(CAIRODIR)\include\glib-2.0 /I$(CAIRODIR)\lib\glib-2.0\include /I$(CAIRODIR)\include\pango-1.0 /I$(CAIRODIR)\include\msvc 172!ENDIF 173!ENDIF 174 175!IF "$(WXT)" == "1" 176WXTLIBS = wxmsw28.lib wxtiff.lib 177!ENDIF 178 179!IF "$(QT)" == "1" 180!IF "$(DEBUG)" == "1" 181!IF "$(QT5)" == "1" 182QTLIBS = Qt5Cored.lib Qt5Guid.lib Qt5Networkd.lib Qt5Svgd.lib Qt5Widgetsd.lib Qt5PrintSupportd.lib qtmaind.lib 183!ELSE 184QTLIBS = QtCored4.lib QtGuid4.lib QtNetworkd4.lib QtSvgd4.lib 185!ENDIF 186!ELSE 187!IF "$(QT5)" == "1" 188QTLIBS = Qt5Core.lib Qt5Gui.lib Qt5Network.lib Qt5Svg.lib Qt5Widgets.lib Qt5PrintSupport.lib qtmain.lib 189!ELSE 190QTLIBS = QtCore4.lib QtGui4.lib QtNetwork4.lib QtSvg4.lib 191!ENDIF 192!ENDIF 193CFLAGS = $(CFLAGS) /I$(QTDIR)\include /I$(QTDIR)\include\QtCore /I$(QTDIR)\include\QtGui /I$(QTDIR)\include\QtWidgets /I$(QTDIR)\include\QtNetwork /I$(QTDIR)\include\QtSvg /DQTGNUPLOT_DATA_DIR=\"$(GNUPLOT_QT_DIR)\" 194LDFLAGS = $(LDFLAGS) /libpath:$(QTDIR)\lib 195CFLAGS = $(CFLAGS) -DQTTERM -DQT_NO_OPENGL 196MOC=$(QTDIR)\bin\moc 197UIC=$(QTDIR)\bin\uic 198RCC=$(QTDIR)\bin\rcc 199EXTRA_TARGETS = $(EXTRA_TARGETS) gnuplot_qt.exe 200!ENDIF 201 202!IF "$(LUA)" == "1" 203OPTIONS = $(OPTIONS) /DHAVE_LUA 204!IFDEF LUADIR 205OPTIONS = $(OPTIONS) /I$(LUADIR)/include 206LDFLAGS = $(LDFLAGS) /libpath:$(LUADIR) 207!ENDIF 208TERMFLAGS = $(TERMFLAGS) /DGNUPLOT_LUA_DIR=\"$(GNUPLOT_LUA_DIR)\" 209LUALIBS = lua52.lib 210!ENDIF 211 212!IF "$(CACA)" == "1" 213OPTIONS = $(OPTIONS) /DHAVE_LIBCACA 214!IFDEF CACADIR 215OPTIONS = $(OPTIONS) /I$(CACADIR) 216LDFLAGS = $(LDFLAGS) /libpath:$(CACADIR) 217!ENDIF 218CACALIBS = libcaca.lib 219!ENDIF 220 221HELPFILE = wgnuplot.chm 222!IF "$(PLATFORM)" == "X64" 223HHC=""%%PROGRAMFILES(X86)%%\HTML Help Workshop\hhc"" 224!ELSE 225HHC="$(PROGRAMFILES)\HTML Help Workshop\hhc" 226!ENDIF 227 228!IF "$(PROCESSOR_ARCHITECTURE)" == "ALPHA" 229MACHINE = $(PROCESSOR_ARCHITECTURE) 230!ELSE 231!IF "$(PLATFORM)" == "X64" 232MACHINE = X64 233MANIFEST = wgnuplot.exe.manifest64 234!ELSE 235MACHINE = IX86 236MANIFEST = wgnuplot.exe.manifest 237!ENDIF 238!ENDIF 239 240# macros for makefile.all 241 242O=obj 243S=$(TOP)\src 244W=$(S)\win\\ 245WX=$(S)\wxterminal\\ 246Q=$(S)\qtterminal\\ 247T=$(TOP)\term\\ 248D=$(TOP)\docs\\ 249M=$(TOP)\demo\\ 250 251default: wgnuplot.exe $(HELPFILE) wgnuplot.mnu $(M)bf_test.exe gnuplot.exe demo_plugin.dll $(EXTRA_TARGETS) 252 253!INCLUDE $(S)\makefile.all 254 255OBJS = $(COREOBJS) version.obj 256 257!IF "$(CAIRO)" == "1" 258OBJS = $(OBJS) gp_cairo.$(O) gp_cairo_helpers.$(O) 259!ENDIF 260 261!IF "$(QT)" == "1" 262OBJS = $(OBJS) qt_term.$(O) 263GNUPLOTQTOBJS = gnuplot_qt.$(O) QtGnuplotWindow.$(O) \ 264QtGnuplotApplication.$(O) QtGnuplotWidget.$(O) \ 265QtGnuplotScene.$(O) QtGnuplotItems.$(O) \ 266QtGnuplotEvent.$(O) \ 267moc_QtGnuplotWindow.$(O) moc_QtGnuplotApplication.$(O) \ 268moc_QtGnuplotWidget.$(O) moc_QtGnuplotScene.$(O) \ 269moc_QtGnuplotEvent.$(O) qrc_QtGnuplotResource.$(O) 270 271# Call the Qt resource compiler 272qrc_QtGnuplotResource.cpp: $(Q)QtGnuplotResource.qrc 273 $(RCC) -name QtGnuplotResource -o $@ $** 274 275# Call the Qt ui compiler 276ui_QtGnuplotSettings.h: $(Q)QtGnuplotSettings.ui 277 $(UIC) -o $@ $** 278 279moc_QtGnuplotWindow.cpp: $(Q)QtGnuplotWindow.h 280 $(MOC) -o $@ $** 281 282moc_QtGnuplotApplication.cpp: $(Q)QtGnuplotApplication.h 283 $(MOC) -o $@ $** 284 285moc_QtGnuplotWidget.cpp: $(Q)QtGnuplotWidget.h 286 $(MOC) -o $@ $** 287 288moc_QtGnuplotScene.cpp: $(Q)QtGnuplotScene.h 289 $(MOC) -o $@ $** 290 291moc_QtGnuplotEvent.cpp: $(Q)QtGnuplotEvent.h 292 $(MOC) -o $@ $** 293 294gnuplot_qt.exe: ui_QtGnuplotSettings.h $(GNUPLOTQTOBJS) 295 $(LD) /entry:mainCRTStartup /subsystem:windows $(LDFLAGS) /map:gnuplot_qt.map /out:$@ $(GNUPLOTQTOBJS) $(QTLIBS) shell32.lib user32.lib 296!ENDIF 297 298WINOBJS = winmain.obj wgnuplib.obj wgraph.obj wprinter.obj wtext.obj \ 299 screenbuf.obj wpause.obj wmenu.obj gpexecute.obj wgdiplus.obj \ 300 wd2d.obj wredirect.obj 301 302ALL_CONSOLE_OBJS = $(OBJS:.obj=.cobj) $(WINOBJS:.obj=.cobj) 303 304 305# default rules 306.cpp.obj: 307 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $*.cpp /Fo$@ 308 309.cpp.cobj: 310 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $*.cpp /Fo$@ 311 312{$(S)}.c.obj: 313 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $(S)\$*.c 314 315{$(S)}.c.cobj: 316 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $(S)\$*.c /Fo$@ 317 318{$(W)}.c.obj: 319 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $(W)$*.c /Fo$@ 320 321{$(W)}.c.cobj: 322 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $(W)$*.c /Fo$@ 323 324{$(W)}.cpp.obj: 325 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $(W)$*.cpp /Fo$@ 326 327{$(W)}.cpp.cobj: 328 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $(W)$*.cpp /Fo$@ 329 330{$(WX)}.c.obj: 331 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $(WX)$*.c /Fo$@ 332 333{$(WX)}.c.cobj: 334 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $(WX)$*.c /Fo$@ 335 336{$(Q)}.cpp.obj: 337 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $(Q)$*.cpp /Fo$@ 338 339{$(Q)}.cpp.cobj: 340 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $(Q)$*.cpp /Fo$@ 341 342{$(S)}.c{$(M)}.exe: 343 $(CC) /c $(CFLAGS) $(W)$*.c /Fo$@ 344 345 346$(OBJS): config.h 347 348config.h: $(TOP)\config\config.nt 349 copy $(TOP)\config\config.nt config.h 350 351wgnuplot.exe: $(OBJS) $(WINOBJS) wgnuplot.res linkopt-w.msw 352 $(LD) /subsystem:windows $(LDFLAGS) /map:wgnuplot.map /out:$@ @linkopt-w.msw 353!IFDEF GDDIR 354 copy $(GDDIR)\bin\*.dll . 355!ENDIF 356!IFDEF LUADIR 357 copy $(LUADIR)\*.dll . 358!ENDIF 359!IFDEF CACADIR 360 copy $(CACADIR)\*.dll . 361!ENDIF 362 363gnuplot.exe: $(ALL_CONSOLE_OBJS) wgnuplot.res linkopt-c.msw 364 $(LD) /subsystem:console $(LDFLAGS) /map:wgnuplot.map /out:$@ @linkopt-c.msw 365!IFDEF GDDIR 366 copy $(GDDIR)\bin\*.dll . 367!ENDIF 368!IFDEF LUADIR 369 copy $(LUADIR)\*.dll . 370!ENDIF 371!IFDEF CACADIR 372 copy $(CACADIR)\*.dll . 373!ENDIF 374 375pgnuplot.exe: $(W)pgnuplot.c 376 $(CC) $(CBASEFLAGS) /I. /I$(TOP) /I$(S) /DWINDOWS_NO_GUI $(W)pgnuplot.c /Fe$@ /link version.obj user32.lib 377 378linkopt-w.msw: Makefile 379 echo $(OBJS) > linkopt-w.msw 380 echo $(WINOBJS) >> linkopt-w.msw 381 echo $(COMMONLIBS) >> linkopt-w.msw 382 echo wgnuplot.res >> linkopt-w.msw 383 echo htmlhelp.lib >> linkopt-w.msw 384!IF "$(GDLIB)" == "1" 385 echo bgd.lib >> linkopt-w.msw 386!ENDIF 387!IF "$(PDFLIB)" == "1" 388 echo pdflib.lib >> linkopt-w.msw 389!ENDIF 390!IF "$(CAIRO)" == "1" 391 echo $(CAIROLIBS) >> linkopt-w.msw 392!ENDIF 393!IF "$(WXT)" == "1" 394 echo $(WXTLIBS) >> linkopt-w.msw 395!ENDIF 396!IF "$(QT)" == "1" 397 echo $(QTLIBS) >> linkopt-w.msw 398!ENDIF 399!IF "$(LUA)" == "1" 400 echo $(LUALIBS) >> linkopt-w.msw 401!ENDIF 402!IF "$(CACA)" == "1" 403 echo $(CACALIBS) >> linkopt-w.msw 404!ENDIF 405 406linkopt-c.msw: Makefile 407 echo $(ALL_CONSOLE_OBJS) > linkopt-c.msw 408 echo $(COMMONLIBS) >> linkopt-c.msw 409 echo $(CONSOLELIBS) >> linkopt-c.msw 410 echo wgnuplot.res >> linkopt-c.msw 411 echo htmlhelp.lib >> linkopt-c.msw 412!IF "$(GDLIB)" == "1" 413 echo bgd.lib >> linkopt-c.msw 414!ENDIF 415!IF "$(PDFLIB)" == "1" 416 echo pdflib.lib >> linkopt-c.msw 417!ENDIF 418!IF "$(CAIRO)" == "1" 419 echo $(CAIROLIBS) >> linkopt-c.msw 420!ENDIF 421!IF "$(WXT)" == "1" 422 echo $(WXTLIBS) >> linkopt-c.msw 423!ENDIF 424!IF "$(QT)" == "1" 425 echo $(QTLIBS) >> linkopt-c.msw 426!ENDIF 427!IF "$(LUA)" == "1" 428 echo $(LUALIBS) >> linkopt-c.msw 429!ENDIF 430!IF "$(CACA)" == "1" 431 echo $(CACALIBS) >> linkopt-c.msw 432!ENDIF 433 434# rules 435 436term.obj: $(S)\term.c $(S)\term.h $(S)\plot.h $(S)\setshow.h $(S)\bitmap.h $(CORETERM) 437 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $(TERMFLAGS) $(S)\$(*B).c /Fo$@ 438 439term.cobj: $(S)\term.c $(S)\term.h $(S)\plot.h $(S)\setshow.h $(S)\bitmap.h $(CORETERM) 440 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $(TERMFLAGS) $(S)\$(*B).c /Fo$@ 441 442winmain.obj: $(W)winmain.c $(W)wgnuplib.h $(W)wtext.h $(S)\plot.h 443 $(CC) /c $(CFLAGS) $(WIN_CFLAGS) $(W)$(*B).c /Fo$@ 444 445winmain.cobj: $(W)winmain.c $(W)wgnuplib.h $(W)wtext.h $(S)\plot.h 446 $(CC) /c $(CFLAGS) $(CONSOLE_CFLAGS) $(W)winmain.c /Fo$@ 447 448 449# resources 450wgnuplot.mnu: $(W)wgnuplot.mnu 451 copy $(W)wgnuplot.mnu wgnuplot.mnu 452 453wgnuplot.res : $(W)wgnuplot.rc $(W)wgnuplib.rc $(W)wresourc.h $(W)grpicon.ico $(W)texticon.ico 454 $(RC) /l 0x409 /fowgnuplot.res /I $(W) /d "NDEBUG" /d WIN32 /d NO_MANIFEST $(W)wgnuplot.rc 455 456 457# build windows help file 458$(HELPFILE): doc2html.exe $(D)gnuplot.doc gnuplot.exe 459 doc2html $(D)gnuplot.doc $(D)windows\\ 460 cd $(D) 461 -"..\config\msvc\gnuplot" -e "winhelp=1" plotstyles.gnu 462 -$(HHC) windows\wgnuplot.hhp 463 cd ..\config\msvc 464 if exist $(D)windows\wgnuplot.chm copy $(D)windows\wgnuplot.chm . 465 466doc2html.exe: $(D)windows\doc2html.c $(D)termdoc.c $(D)xref.c version.obj $(CORETERM) 467 $(CC) $(CFLAGS) /F 5000 /W1 /I. $(VERSION_CPPFLAGS) /DWINDOWS_NO_GUI /I$(D) /I$(T) -Fedoc2html.exe $(D)windows\doc2html.c $(D)termdoc.c $(D)xref.c version.obj 468 469 470# make binary demo files 471# WINDOWS_NO_GUI makes sure that wtext.h does not redefine fread() etc. 472$(M)bf_test.exe : $(S)\bf_test.c 473 $(CC) $(CFLAGS) /F 5000 /W1 /DWINDOWS_NO_GUI /Fe$(M)bf_test.exe $(S)\bf_test.c 474 cd $(M) 475 bf_test 476 cd ..\config\msvc 477 478demo_plugin.dll: $(M)plugin\demo_plugin.c 479 $(CC) $(CFLAGS) /LD /D_USRDLL /D_WINDLL $(M)plugin\$*.c /link /out:$@ 480 481# clean up temporary files 482clean: 483 if exist *.obj del *.obj 484 if exist *.cobj del *.cobj 485 if exist *.map del *.map 486 if exist moc_*.cpp del moc_*.cpp 487 if exist qrc_*.cpp del qrc_*.cpp 488 if exist ui_*.h del ui_*.h 489 if exist wgnuplot.res del wgnuplot.res 490 if exist wgnuplot.chw del wgnuplot.chw 491 if exist $(M)bf_test.exe del $(M)bf_test.exe 492 if exist linkopt-w.msw del linkopt-w.msw 493 if exist linkopt-c.msw del linkopt-c.msw 494 if exist doc2html.exe del doc2html.exe 495 if exist gnuplot rmdir /s /q gnuplot 496 if exist *.tmp del *.tmp 497 498veryclean: clean 499 if exist wgnuplot.exe del wgnuplot.exe 500 if exist wgnuplot.chm del wgnuplot.chm 501 if exist wgnuplot.hlp del wgnuplot.hlp 502 if exist wgnuplot.mnu del wgnuplot.mnu 503 if exist pgnuplot.exe del pgnuplot.exe 504 if exist gnuplot.exe del gnuplot.exe 505 if exist gnuplot_qt.exe del gnuplot_qt.exe 506 if exist *.manifest del *.manifest 507 if exist $(M)binary1 del $(M)binary1 508 if exist $(M)binary2 del $(M)binary2 509 if exist $(M)binary3 del $(M)binary3 510 if exist demo_plugin.dll del demo_plugin.* 511 if exist $(M)fit.log del $(M)fit.log 512 if exist $(M)soundfit.par del $(M)soundfit.par 513 if exist config.h del config.h 514 515install: 516 if not exist $(DESTDIR) mkdir $(DESTDIR) 517 if not exist $(DESTDIR)\bin mkdir $(DESTDIR)\bin 518 copy /Y wgnuplot.exe $(DESTDIR)\bin 519 copy /Y gnuplot.exe $(DESTDIR)\bin 520 copy /Y gnuplot_qt.exe $(DESTDIR)\bin 521 copy /Y *gnuplot.exe.manifest $(DESTDIR)\bin 522 copy /Y $(W)wgnuplot.mnu $(DESTDIR)\bin 523 copy /Y $(W)wgnuplot-ja.mnu $(DESTDIR)\bin 524 if exist wgnuplot.chm copy /Y wgnuplot.chm $(DESTDIR)\bin 525 if exist wgnuplot-ja.chm copy /Y wgnuplot-ja.chm $(DESTDIR)\bin 526 if exist wgnuplot.hlp copy /Y wgnuplot.hlp $(DESTDIR)\bin 527 copy /Y *.dll $(DESTDIR)\bin 528 if exist platform\ if not exist $(DESTDIR)\bin\platforms mkdir $(DESTDIR)\bin\platforms 529 if exist platform\ xcopy /Y /S platforms $(DESTDIR)\bin\platforms 530 if not exist $(DESTDIR)\$(GNUPLOT_PS_DIR) mkdir $(DESTDIR)\$(GNUPLOT_PS_DIR) 531 xcopy /Y $(T)PostScript\*.ps $(DESTDIR)\$(GNUPLOT_PS_DIR) 532 if not exist $(DESTDIR)\$(GNUPLOT_JS_DIR) mkdir $(DESTDIR)\$(GNUPLOT_JS_DIR) 533 xcopy /Y $(T)js\*.* $(DESTDIR)\$(GNUPLOT_JS_DIR) 534 if not exist $(DESTDIR)\$(GNUPLOT_LUA_DIR) mkdir $(DESTDIR)\$(GNUPLOT_LUA_DIR) 535 xcopy /Y $(T)lua\*.* $(DESTDIR)\$(GNUPLOT_LUA_DIR) 536 if not exist $(DESTDIR)\$(GNUPLOT_SHARE_DIR) mkdir $(DESTDIR)\$(GNUPLOT_SHARE_DIR) 537 copy /Y $(TOP)\share\gnuplotrc $(DESTDIR)\$(GNUPLOT_SHARE_DIR) 538 copy /Y $(TOP)\share\*.gp $(DESTDIR)\$(GNUPLOT_SHARE_DIR) 539 if not exist $(DESTDIR)\share\LaTeX mkdir $(DESTDIR)\share\LaTeX 540 copy /Y $(TOP)\share\LaTeX\README $(DESTDIR)\share\LaTeX 541 copy /Y $(TOP)\share\LaTeX\gnuplot.cfg $(DESTDIR)\share\LaTeX 542 if not exist $(DESTDIR)\docs mkdir $(DESTDIR)\docs 543 for %f in (NEWS) do copy $(TOP)\%f $(DESTDIR)\%f 544 for %f in (BUGS README Copyright ChangeLog FAQ.pdf) do copy $(TOP)\%f $(DESTDIR)\docs\%f 545 if not exist $(DESTDIR)\license mkdir $(DESTDIR)\license 546 for %f in (Copyright) do copy $(TOP)\%f $(DESTDIR)\license\%f 547 if exist $(TOP)\win\README-Windows.txt copy /Y $(TOP)\win\README-Windows.txt $(DESTDIR) 548 if exist $(TOP)\win\README-Windows-ja.txt copy /Y $(TOP)\win\README-Windows-ja.txt $(DESTDIR) 549 if not exist $(DESTDIR)\demo mkdir $(DESTDIR)\demo 550 xcopy /Y $(TOP)\demo $(DESTDIR)\demo 551 if not exist $(DESTDIR)\demo\games mkdir $(DESTDIR)\demo\games 552 xcopy /Y $(TOP)\demo\games $(DESTDIR)\demo\games 553# if not exist $(DESTDIR)\contrib\pm3d mkdir $(DESTDIR)\contrib\pm3d 554# xcopy /Y $(TOP)\pm3d\contrib\*.* $(DESTDIR)\contrib\pm3d 555 556zip: 557 $(MAKE) DESTDIR=.\gnuplot install 558 zip -mro9 gp500-msvc-win32.zip gnuplot 559