# Hello, emacs: this is a -*- Makefile -*-
# $Id: makefile.oww,v 1.9 2006/10/22 11:56:03 broeker Exp $
#
# GNUPLOT Makefile OpenWatcom 1.3 on Win32
# To compile:
# Either, from ..\src:
# wmake -f ..\config\makefile.oww
# or copy this file to ..\src, edit it to your liking, then
# from ..\src:
# wmake -f makefile.oww
#
# History of this file:
# 2004-02-23: Created by massive editing of makefile.nt (and config.nt)
# 2004-04-25: Removed all remaining MS-isms (by peeking at how OW's
# MS namesake replacement tools generate their command lines)
#
# where to place gnuplot.gih helpfile
# NOTE: compiled-in location governed by config.oww!
HELPFILE = wgnuplot.hlp
TOP = .
# Programs:
# The Microsoft Help compiler:
HCW = "c:\program files\help workshop\hcw.exe"
# OpenWatcom programs:
WCL = wcl386
WCC = wcc386
WLD = wlink
WRC = wrc
# Speed up compilation a bit by running the compiler as a DLL from
# inside wmake:
!ifdef __LOADDLL__
! loaddll wcc wccd
! loaddll wccaxp wccdaxp
! loaddll wcc386 wccd386
! loaddll wpp wppdi86
! loaddll wppaxp wppdaxp
! loaddll wpp386 wppd386
! loaddll wlink wlink
! loaddll wlib wlibd
!endif
# Where to install the PostScript prologue files, relatively to the executable
# wgnuplot.exe
GNUPLOT_PS_DIR = share/PostScript
# compiler flags:
#
# Defines
CPPFLAGS = -D_Windows -DHAVE_CONFIG_H -DUSE_MOUSE -DEAM_OBJECTS
# library-dependent ones may have to be added, like:
# -DHAVE_LIBPNG -DHAVE_LIBPDF
# compiler flags, determined from MS ones by OW's "cl /showwopts"
# -c : don't link
# -I : add directory to include search path
# -zq : don't show a version banner message
# -5r : P5-optimized, 386-compatible code, register calling convention
# -zm : put each function in its own section to improve dead code elimination
# -bm : target multi-threaded environment
# -sg : grow the stack if needed
# -zlf: store library usage in .obj files
# -ei : force sizeof(enum) >= sizeof(int)
# -o : optimization options:
# r: reorder for pipelining
# i: inline intrinsics
# l: loop optimizations
# t: optimize for speed
# -j : char is signed
# -aa : allow non-const initializers for locals
# -d2 : debug information
WCFLAGS = -zlf -ei -zq -I. -zm -bm -5r -sg -orilt -j -za99 -aa -d2 $(CPPFLAGS)
# paths for external libs added here...
LDLIBS =
# ...and here.
# see other terminal defines in term.h
TERMFLAGS = -DGNUPLOT_PS_DIR="$(GNUPLOT_PS_DIR)" -I..\term
# macros for makefile.all
O=obj
T=..\term\
D=..\docs\
M=..\demo\
BINARYFILES=$(M)binary1 $(M)binary2 $(M)binary3
# Note: like makefile.wc, this need the special Watcom-style version of
# makefile.all, because line continuation in WMake is different...
!INCLUDE makefile.awc
default: wgnuplot.exe $(HELPFILE) wgnuplot.mnu &
$(BINARYFILES) pgnuplot.exe .SYMBOLIC
OBJS = $(COREOBJS) version.obj
WINOBJS = winmain.obj wgnuplib.obj wgraph.obj wprinter.obj wtext.obj &
wpause.obj wmenu.obj gpexecute.obj
# default rule
.c.obj: .AUTODEPEND
$(WCC) $(WCFLAGS) $*.c
$(OBJS): config.h .AUTODEPEND
# file-specific rules
config.h: ..\config\config.oww
copy ..\config\config.oww config.h
wgnuplot.exe: $(OBJS) $(WINOBJS) wgnuplot.res texticon.ico grpicon.ico
$(WLD) @