1## 2## Makefile to build Perl on NetWare using Microsoft NMAKE and CodeWarrior tools 3## 4## This will build perl.nlm, perl.lib and extensions called NLMs 5## 6 7## 8## Please read README.netware before starting 9## 10 11## 12## Build configuration. Edit the values below to suit your needs. 13## 14 15## This file is created by using the makefile that creates Windows Perl as the reference 16## Author: 17## Date Created: 13th July 2000 18## Date Modified: 21st March 2002 19# Name of the NLM 20 21 22NLM_NAME = perl.nlm 23NLM_NAME8 = Perl 24 25MAKE_ACTION = Build 26 27# Flags 28DBG_FLAG = -DDEBUGON 29 30NW_FLAGS = -DNETWARE -DNLM_PLATFORM -DNETDB_USE_INTERNET 31 32REL_DIR = Release 33DEB_DIR = Debug 34 35 36!ifndef NLMSDKBASE 37!message "Run bat\SetNWBld.bat to set the NetWare SDK before continuing.\n" 38!error 39!endif # !ifndef NLMSDKBASE 40 41!ifndef CODEWAR # !ifdef CODEWAR 42!message "CodeWarrior tools base directory is not defined. Run bat\setnwbld.bat before proceeding" 43!error 44!endif # !ifdef CODEWAR 45 46!ifndef MAKE_TYPE 47!message "Run bat\buildtype.bat to set the build type before continuing.\n" 48!error 49!endif # !ifndef MAKE_TYPE 50 51!ifdef USE_MPK 52MPKFLAGS = -DMPK_ON -DIAPX386 53MPKMESSAGE = MPK Build... 54XDCTOOL = mpkxdc 55!ifndef MPKBASE 56!message "Run bat\setmpksdk.bat to set the NetWare MPK SDK before continuing.\n" 57!error 58!endif # !ifndef MPKBASE 59NLM_INCLUDE_MP = -I$(MPKBASE)\include 60MPKTOOL = $(MPKBASE)\$(XDCTOOL) 61!else # !ifdef USE_MPK 62MPKMESSAGE = Non MPK Build... 63NLM_INCLUDE_MP = 64MPKTOOL = 65!endif # !ifdef USE_MPK 66 67#!ifndef SECURITYBASE 68#!message "Run bat\SetSecSdk.bat to set the Security path before continuing.\n" 69#!error 70#!endif # !ifndef SECURITYBASE 71 72#!ifndef UCSINC 73#!message "Run bat\BldNWExt.bat to set the UCS Include path before continuing.\n" 74#!error 75#!endif # !ifndef UCSINC 76 77NLMIMPORTS = $(NLMSDKBASE)\imports 78 79!ifdef SECURITYBASE 80SECURITY_IMPORTS = $(SECURITYBASE)\imports 81!endif # !ifdef SECURITYBASE 82 83!ifndef NLM_VERSION 84NLM_VERSION = 3,20,0 85!endif 86 87 88# Here comes the CW tools - TO BE FILLED TO BUILD WITH CW - 89MODULE_DESC = "Perl 5.8.8 for NetWare" 90CCTYPE = CodeWarrior 91C_COMPILER = mwccnlm -c 92CPP_COMPILER = mwccnlm 93LINK = mwldnlm 94LD = mwldnlm 95NLM_LIB = mwldnlm -type library 96TOOL_HEADERS = 97TOOL_PATH = 98CWCPPFLAGS = -cpp_exceptions on -wchar_t off -bool on -w on -ansi off 99CCFLAGS = -maxerrors 25 -processor Pentium -align packed \ 100 -w nounusedarg -msext on \ 101 -DN_PLAT_NLM -DNLM=1 -D__NO_MATH_OPS -msgstyle gcc 102COMPILER_FLAG = -d NETWARE 103ERROR_FLAG = -sym on -sym codeview4 -sym internal 104LDFLAGS = -type generic -stacksize 16384 -zerobss \ 105 -nofail -msgstyle gcc -nostderr -w on \ 106 -nlmversion $(NLM_VERSION) \ 107 -copy "Copyright (C) 2000-01\, 2002 Novell\, Inc. All Rights Reserved." 108 109# Debug flags comes here - Not mandatory - required only for debug build 110!if "$(MAKE_TYPE)"=="Debug" 111BLDDIR = $(DEB_DIR) 112BLDMESG = Debug version, 113!ifdef USE_D2 114BS_CFLAGS = -opt off -inline off -sym on -sym codeview4 -sym internal -DDEBUGGING -DDKFBPON 115BLDMESG = $(BLDMESG) Using /d2 option 116!ifdef NLM_NAME8 117LDFLAGS = $(LDFLAGS) -sym on -sym codeview4 -sym internal -osym $(MAKE_TYPE)\$(NLM_NAME8).sym 118!else # !ifdef NLM_NAME8 119LDFLAGS = $(LDFLAGS) -sym on -sym codeview4 -sym internal -osym $(MAKE_TYPE)\$(NLM_NAME).sym 120!endif # !ifdef NLM_NAME8 121!else # !ifdef USE_D2 122BS_CFLAGS = -opt off -inline off -sym on -sym codeview4 -sym internal -DDEBUGGING -DDKFBPON 123BLDMESG = $(BLDMESG) Using /d1 option 124!ifdef NLM_NAME8 125LDFLAGS = $(LDFLAGS) -sym on -sym codeview4 -sym internal -osym $(MAKE_TYPE)\$(NLM_NAME8).sym 126!else # !ifdef NLM_NAME8 127LDFLAGS = $(LDFLAGS) -sym on -sym codeview4 -sym internal -osym $(MAKE_TYPE)\$(NLM_NAME).sym 128!endif # !ifdef NLM_NAME8 129!endif # !ifdef USE_D2 130!else # !if "$(MAKE_TYPE)"=="Debug" 131BLDDIR = $(REL_DIR) 132BLDMESG = Release version 133##BS_CFLAGS = -opt speed -inline smart -inline auto -sym off 134BS_CFLAGS = 135!endif # !if "$(MAKE_TYPE)"=="Debug" 136 137 138ADD_LOCDEFS = -DPERL_CORE 139 140NLM_INCLUDE = -I$(NLMSDKBASE)\include 141NLM_INCLUDE_NLM = -I$(NLMSDKBASE)\include\nlm 142NLM_INCLUDE_NLM_SYS = -I$(NLMSDKBASE)\include\nlm\sys 143NLM_INCLUDE_OBSLETE = -I$(NLMSDKBASE)\include\nlm\obsolete 144 145!ifdef SECURITYBASE 146SECURITY_INCLUDE = -I$(SECURITYBASE)\include 147!endif #!ifdef SECURITYBASE 148 149!ifdef UCSINC 150NLM_INCLUDE_UCS = -I$(UCSINC) 151!endif #!ifndef UCSINC 152 153!if "$(NW_EXTNS)"=="yes" 154INCLUDE_NW = -I.\include 155!endif 156 157 158INC_PREV = -I.. 159INC_THIS = -I. 160 161 162NLM_INCLUDE_PATH = $(NLM_INCLUDE) $(NLM_INCLUDE_NLM) $(NLM_INCLUDE_NLM_SYS) $(NLM_INCLUDE_OBSLETE) \ 163 $(NLM_INCLUDE_MP) $(TOOL_HEADERS) 164 165!ifdef SECURITYBASE 166NLM_INCLUDE_PATH = $(NLM_INCLUDE_PATH) $(SECURITY_INCLUDE) 167!endif #!ifdef SECURITYBASE 168 169!ifdef UCSINC 170NLM_INCLUDE_PATH = $(NLM_INCLUDE_PATH) $(NLM_INCLUDE_UCS) 171!endif #!ifndef UCSINC 172 173INCLUDE = $(INC_THIS) $(INC_PREV) -I- $(NLM_INCLUDE_PATH) 174 175PATH = $(PATH);$(TOOL_PATH) 176 177NLM_INCLUDES = -I$(COREDIR) $(INCLUDE_NW) 178 179CCFLAGS = $(CCFLAGS) $(INCLUDE) 180 181COMPLER_FLAGS = $(BS_CFLAGS) $(ADD_BUILDOPT) $(NW_FLAGS) $(COMPILER_FLAG) $(MPKFLAGS) $(CCFLAGS) 182 183 184# Source file list 185NW_H_FILES = \ 186 .\iperlhost.h \ 187 .\interface.h \ 188 .\netware.h \ 189 .\nw5iop.h \ 190 .\nw5sck.h \ 191 .\nwpipe.h \ 192 .\nwplglob.h \ 193 .\nwtinfo.h \ 194 .\nwutil.h \ 195 .\nwhashcls.h \ 196 197NW_HOST_H_FILES = \ 198 .\iperlhost.h \ 199 .\interface.h \ 200 .\netware.h \ 201 .\nw5sck.h \ 202 .\nwperlhost.h \ 203 204 205CLIB_H_FILES = \ 206 .\clibsdio.h \ 207 .\clibstr.h \ 208 .\clibstuf.h \ 209 .\stdio.h \ 210 .\string.h \ 211 212NW_SRC = \ 213 .\CLIBstuf.c \ 214 .\sv_nw.c \ 215 .\nw5.c \ 216 .\nw5sck.c \ 217 .\nw5thread.c \ 218 .\nwmain.c \ 219 .\nwpipe.c \ 220 .\nwplglob.c \ 221 .\nwtinfo.c \ 222 .\nwutil.c \ 223 224NW_CPP_SRC = \ 225 .\nwhashcls.cpp \ 226 .\interface.cpp \ 227 .\perllib.cpp \ 228 229EXT_MAIN_SRC = \ 230 .\Main.c \ 231 232PERL_IO_SRC = \ 233 ..\perlio.c 234 235CLIBSTUF_OBJ = \ 236 .\CLIBstuf.obj 237 238#PERL_TMP_OBJ = $(PERL_TEMP_SRC:.c=.obj) 239NW_SRC_OBJ = $(NW_SRC:.c=.obj) 240NW_CPP_SRC_OBJ = $(NW_CPP_SRC:.cpp=.obj) 241NLM_MICROCORE_OBJ = $(MICROCORE_SRC:.c=.obj) 242PERL_LIB_OBJ = $(PERL_LIB_SRC:.c=.obj) 243PERL_IO_OBJ = $(PERL_IO_SRC:.c=.obj) 244NLM_CORE_OBJ = $(NLM_MICROCORE_OBJ) 245EXT_MAIN_OBJ = $(EXT_MAIN_SRC:.c=.obj) 246 247# For dependency checking 248# $(BLDDIR) in place of Release or Debug is not working, should look into this - sgp 249!if "$(BLDDIR)"=="Release" 250NLM_OBJ = $(NLM_CORE_OBJ:..\=.\Release\) 251NEWTARE_OBJ_DEP = $(NW_SRC_OBJ:.\=.\Release\) 252NEWTARE_CPP_OBJ_DEP = $(NW_CPP_SRC_OBJ:.\=.\Release\) 253PERL_LIB_OBJ_DEP = $(PERL_LIB_OBJ:.\=.\Release\) 254PERL_IO_OBJ_DEP = $(PERL_IO_OBJ:..\=.\Release\) 255!else 256NLM_OBJ = $(NLM_CORE_OBJ:..\=.\Debug\) 257NEWTARE_OBJ_DEP = $(NW_SRC_OBJ:.\=.\Debug\) 258NEWTARE_CPP_OBJ_DEP = $(NW_CPP_SRC_OBJ:.\=.\Debug\) 259PERL_LIB_OBJ_DEP = $(PERL_LIB_OBJ:.\=.\Debug\) 260PERL_IO_OBJ_DEP = $(PERL_IO_OBJ:..\=.\Debug\) 261!endif 262 263# Symbol base_import & version added for NETWARE 264NW_CFG_VARS = \ 265 "INST_DRV=$(INST_DRV)" \ 266 "INST_TOP=$(INST_TOP)" \ 267 "INST_VER=$(INST_VER)" \ 268 "INST_ARCH=$(INST_ARCH)" \ 269 "INST_NW_TOP1=$(INST_NW_TOP1)" \ 270 "INST_NW_TOP2=$(INST_NW_TOP2)" \ 271 "INST_NW_VER=$(INST_NW_VER)" \ 272 "archname=$(ARCHNAME)" \ 273 "cc=$(C_COMPILER)" \ 274 "ar=$(LINK)" \ 275 "ccflags=$(COMPLER_FLAGS)" \ 276 "cf_email=$(EMAIL)" \ 277 "d_crypt=$(D_CRYPT)" \ 278 "d_mymalloc=$(PERL_MALLOC)" \ 279# "libs=$(LIBFILES)" \ 280 "incpath=$(NLM_INCLUDE_PATH)" \ 281 "libperl=$(PERLIMPLIB:..\=)" \ 282 "libpth=$(LIBPATH)" \ 283# "libc=$(LIBC)" \ 284 "make=nmake" \ 285 "static_ext=$(STATIC_EXT)" \ 286 "dynamic_ext=$(DYNAMIC_EXT)" \ 287 "nonxs_ext=$(NONXS_EXT)" \ 288 "use5005threads=$(USE_5005THREADS)" \ 289 "useithreads=$(USE_ITHREADS)" \ 290 "usethreads=$(USE_5005THREADS)" \ 291 "usemultiplicity=$(USE_MULTI)" \ 292 "ld=$(LINK)" \ 293 "base_import=$(BASE_IMPORT_FILES)" \ 294 "LINK_FLAGS=$(LINK_FLAGS:"=\")" \ 295 "optimize=" \ 296 "d_stdio_cnt_lval=undef" \ 297 "d_stdio_ptr_lval=undef" \ 298 "d_stdiobase=undef" \ 299 "d_stdstdio=undef" \ 300 "d_times=undef" \ 301 "direntrytype=DIR" \ 302 "nlm_version=$(NLM_VERSION)" \ 303 "d_archname=NetWare" \ 304 "mpktool=$(MPKTOOL) $(XDCFLAGS)" \ 305 "toolpath=$(TOOL_PATH)" 306 307 308NW_CFGSH_TMPL = config.wc 309NW_CFGH_TMPL = config_H.wc 310 311SOCKET_NLM = $(AUTODIR)\Socket\Socket.NLM 312FCNTL_NLM = $(AUTODIR)\Fcntl\Fcntl.NLM 313IO_NLM = $(AUTODIR)\IO\IO.NLM 314OPCODE_NLM = $(AUTODIR)\Opcode\Opcode.NLM 315SDBM_FILE_NLM = $(AUTODIR)\SDBM_File\SDBM_File.NLM 316POSIX_NLM = $(AUTODIR)\POSIX\POSIX.NLM 317ATTRS_NLM = $(AUTODIR)\attrs\attrs.NLM 318THREAD_NLM = $(AUTODIR)\Thread\Thread.NLM 319B_NLM = $(AUTODIR)\B\B.NLM 320DUMPER_NLM = $(AUTODIR)\Data\Dumper\Dumper.NLM 321PEEK_NLM = $(AUTODIR)\Devel\Peek\Peek.NLM 322RE_NLM = $(AUTODIR)\re\re.NLM 323BYTELOADER_NLM = $(AUTODIR)\ByteLoader\ByteLoader.NLM 324DPROF_NLM = $(AUTODIR)\Devel\DProf\DProf.NLM 325GLOB_NLM = $(AUTODIR)\File\Glob\Glob.NLM 326HOSTNAME_NLM = $(AUTODIR)\Sys\Hostname\Hostname.NLM 327CWD_NLM = $(EXTDIR)\Cwd\Cwd.NLM 328STORABLE_NLM = $(EXTDIR)\Storable\Storable.NLM 329LISTUTIL_NLM = $(EXTDIR)\List\Util.NLM 330MIMEBASE64_NLM = $(EXTDIR)\MIME\Base64\Base64.NLM 331XSAPITEST_NLM = $(EXTDIR)\XS\APItest\APItest.NLM 332XSTYPEMAP_NLM = $(EXTDIR)\XS\Typemap\Typemap.NLM 333UNICODENORMALIZE_NLM = $(EXTDIR)\Unicode\Normalize\Normalize.NLM 334 335EXTENSION_NLM = \ 336 $(FCNTL_NLM) \ 337 $(BYTELOADER_NLM) \ 338 $(IO_NLM) \ 339 $(SOCKET_NLM) \ 340 $(OPCODE_NLM) \ 341 $(B_NLM) \ 342 $(ATTRS_NLM) \ 343 $(SDBM_FILE_NLM) \ 344 $(POSIX_NLM) \ 345 $(THREAD_NLM) \ 346 $(DUMPER_NLM) \ 347 $(GLOB_NLM) \ 348 $(PEEK_NLM) \ 349 $(RE_NLM) \ 350 $(DPROF_NLM) \ 351 $(HOSTNAME_NLM) \ 352 $(CWD_NLM) \ 353 $(STORABLE_NLM) \ 354 $(LISTUTIL_NLM) \ 355 $(MIMEBASE64_NLM) \ 356 $(XSAPITEST_NLM) \ 357 $(XSTYPEMAP_NLM) \ 358 $(UNICODENORMALIZE_NLM) \ 359 $(FILTER_NLM) 360 361# Begin - Following is required to build NetWare specific extensions CGI2Perl, Perl2UCS and UCSExt 362CGI2PERL = CGI2Perl\CGI2Perl 363PERL2UCS = Perl2UCS\Perl2UCS 364UCSExt = Perl2UCS\UCSExt 365 366CGI2PERL_NLM = \CGI2Perl\CGI2Perl.NLM 367PERL2UCS_NLM = $(AUTODIR)\Perl2UCS\Perl2UCS.NLM 368UCSExt_NLM = $(AUTODIR)\UCSExt\UCSExt.NLM 369 370NETWARE_EXTNS = \ 371 $(CGI2PERL_NLM) \ 372 $(PERL2UCS_NLM) \ 373 $(UCSExt_NLM) 374# End 375 376 377ECHO_SRC = TestNLM\echo\echo.c 378TYPE_SRC = TestNLM\type\type.c 379ECHO_SRC_OBJ = $(ECHO_SRC:.c=.obj) 380TYPE_SRC_OBJ = $(TYPE_SRC:.c=.obj) 381ECHO_NLM = TestNLM\echo\echo.nlm 382TYPE_NLM = TestNLM\type\type.nlm 383 384TEST_NLMS = \ 385 $(ECHO_NLM) \ 386 $(TYPE_NLM) \ 387 388 389!ifndef SCREEN 390SCREEN = 'none' 391!endif 392 393!ifndef NLM_DESCRIPTION 394NLM_DESCRIPTION = $(NLM_NAME8) for NetWare 395!endif 396 397!ifndef NLM_VERSION 398NLM_VERSION = 3.1.0 399!endif 400 401!ifndef NLM_EXT 402NLM_EXT = NLM 403!endif 404 405!ifndef BUILT 406BUILT = $(BLDDIR)\$(NLM_NAME8).$(NLM_EXT) 407!endif 408 409!ifndef BASE_IMPORT_FILES 410BASE_IMPORT_FILES = Import @$(NLMIMPORTS)\clib.imp, @$(NLMIMPORTS)\nlmlib.imp, @$(NLMIMPORTS)\threads.imp, @$(NLMIMPORTS)\nit.imp, @$(NLMIMPORTS)\socklib.imp, \ 411@$(NLMIMPORTS)\fpsm.imp, @$(NLMIMPORTS)\lib0.imp 412!endif 413 414!ifdef SECURITYBASE 415BASE_IMPORT_FILES = $(BASE_IMPORT_FILES), @$(SECURITY_IMPORTS)\nwsec.imp 416!endif # !ifdef SECURITYBASE 417 418!ifdef USE_MPK 419BASE_IMPORT_FILES = $(BASE_IMPORT_FILES), @$(MPKBASE)\import\mpkorg.imp 420!endif 421 422!ifndef BASE_IMPORT_FNS 423BASE_IMPORT_FNS = Import ImportSymbol, GetSystemConsoleScreen, LoadModule 424!endif 425 426!ifdef CODEWAR 427NWLIBPATH = 428LIBPATH386 = 429LIBPATH = 430!else # !ifdef CODEWAR 431!error Please define the tools base directory before proceeding 432!endif # !ifdef CODEWAR 433 434!ifndef BASE_LIBRARIES 435!ifdef WATCOM 436BASE_LIBRARIES = Library plib3s.lib, math3s.lib, clib3s.lib 437!endif # !ifdef WATCOM 438!ifdef CODEWAR 439BASE_LIBRARIES = 440!endif # !ifdef CODEWAR 441!endif # !ifndef BASE_LIBRARIES 442 443 444COPYRIGHT = Copyright (C) 2000-01, 2002 Novell, Inc. All Rights Reserved. 445 446EXPORTS = Export @perl.imp 447 448# 449# Set these to wherever you want "nmake install" to put your 450# newly built perl. 451# 452INST_DRV = C: 453INST_TOP = $(INST_DRV)\perl 454 455INST_NW_DRV = i: 456INST_NW_VOL = sys: 457INST_NW_TOP1 = $(INST_NW_VOL)\perl 458INST_NW_TOP2 = $(INST_NW_DRV)\perl 459#INST_NW_VER = \5.6.1 460 461# 462# Comment this out if you DON'T want your perl installation to be versioned. 463# This means that the new installation will overwrite any files from the 464# old installation at the same INST_TOP location. Leaving it enabled is 465# the safest route, as perl adds the extra version directory to all the 466# locations it installs files to. If you disable it, an alternative 467# versioned installation can be obtained by setting INST_TOP above to a 468# path that includes an arbitrary version string. 469# 470INST_VER = \5.8.8 471 472# 473# Comment this out if you DON'T want your perl installation to have 474# architecture specific components. This means that architecture- 475# specific files will be installed along with the architecture-neutral 476# files. Leaving it enabled is safer and more flexible, in case you 477# want to build multiple flavors of perl and install them together in 478# the same location. Commenting it out gives you a simpler 479# installation that is easier to understand for beginners. 480# 481INST_ARCH = \$(ARCHNAME) 482 483# 484# uncomment to enable multiple interpreters. This is need for fork() 485# emulation. 486# 487 488USE_MULTI = define 489 490# 491# Beginnings of interpreter cloning/threads; still very incomplete. 492# This should be enabled to get the fork() emulation. This needs 493# USE_MULTI as well. 494# 495USE_ITHREADS = define 496 497# 498# uncomment to enable the implicit "host" layer for all system calls 499# made by perl. This needs USE_MULTI above. This is also needed to 500# get fork(). 501# 502USE_IMP_SYS = define 503 504# uncomment this to enable the experimental PerlIO I/O subsystem 505# else USE_STDIO will be defined. 506#USE_PERLIO = define 507#USE_STDIO = define 508# 509# WARNING! This option is deprecated and will eventually go away (enable 510# USE_ITHREADS instead). 511# 512# uncomment to enable threads-capabilities. This is incompatible with 513# USE_ITHREADS, and is only here for people who may have come to rely 514# on the experimental Thread support that was in 5.005. 515# 516#USE_5005THREADS= define 517 518# For now let this be here 519# 520#CRYPT_SRC = fcrypt.c 521 522# For now let this be here 523# 524#CRYPT_LIB = fcrypt.lib 525 526# 527# set this if you wish to use perl's malloc 528# WARNING: Turning this on/off WILL break binary compatibility with extensions 529# you may have compiled with/without it. Be prepared to recompile all 530# extensions if you change the default. Currently, this cannot be enabled 531# if you ask for USE_IMP_SYS above. 532# 533#PERL_MALLOC = define 534 535# 536# set this to your email address (perl will guess a value from 537# from your loginname and your hostname, which may not be right) 538# 539#EMAIL = 540 541## 542## Build configuration ends. 543## 544 545##################### CHANGE THESE ONLY IF YOU MUST ##################### 546 547!IF "$(CRYPT_SRC)$(CRYPT_LIB)" == "" 548D_CRYPT = undef 549!ELSE 550D_CRYPT = define 551CRYPT_FLAG = -DHAVE_DES_FCRYPT 552!ENDIF 553 554!IF "$(PERL_MALLOC)" == "" 555PERL_MALLOC = undef 556!ENDIF 557 558!IF "$(USE_5005THREADS)" == "" 559USE_5005THREADS = undef 560!ENDIF 561 562!IF "$(USE_5005THREADS)" == "define" 563USE_ITHREADS = undef 564!ENDIF 565 566!IF "$(USE_IMP_SYS)" == "define" 567PERL_MALLOC = undef 568!ENDIF 569 570!IF "$(USE_MULTI)" == "" 571USE_MULTI = undef 572!ENDIF 573 574!IF "$(USE_ITHREADS)" == "" 575USE_ITHREADS = undef 576!ENDIF 577 578!IF "$(USE_IMP_SYS)" == "" 579USE_IMP_SYS = undef 580!ENDIF 581 582!IF "$(USE_PERLCRT)" == "" 583USE_PERLCRT = undef 584!ENDIF 585 586!IF "$(USE_IMP_SYS)$(USE_MULTI)$(USE_5005THREADS)" == "defineundefundef" 587USE_MULTI = define 588!ENDIF 589 590!IF "$(USE_ITHREADS)$(USE_MULTI)" == "defineundef" 591USE_MULTI = define 592USE_5005THREADS = undef 593!ENDIF 594 595!IF "$(USE_MULTI)$(USE_5005THREADS)" != "undefundef" 596BUILDOPT = $(BUILDOPT) -DPERL_IMPLICIT_CONTEXT 597!ENDIF 598 599!IF "$(USE_IMP_SYS)" != "undef" 600BUILDOPT = $(BUILDOPT) -DPERL_IMPLICIT_SYS 601!ENDIF 602 603!IF "$(PROCESSOR_ARCHITECTURE)" == "" 604PROCESSOR_ARCHITECTURE = x86 605!ENDIF 606 607!IF "$(USE_5005THREADS)" == "define" 608ARCHNAME = NetWare-$(PROCESSOR_ARCHITECTURE)-thread 609!ELSE 610!IF "$(USE_MULTI)" == "define" 611ARCHNAME = NetWare-$(PROCESSOR_ARCHITECTURE)-multi 612!ELSE 613ARCHNAME = NetWare-$(PROCESSOR_ARCHITECTURE) 614!ENDIF 615!ENDIF 616 617!IF "$(USE_MULTI)$(USE_5005THREADS)" != "undefundef" 618ADD_BUILDOPT = $(ADD_BUILDOPT) -DPERL_IMPLICIT_CONTEXT 619!ENDIF 620 621!IF "$(USE_IMP_SYS)" != "undef" 622ADD_BUILDOPT = $(ADD_BUILDOPT) -DPERL_IMPLICIT_SYS 623!ENDIF 624 625!IF "$(USE_ITHREADS)" == "define" 626ARCHNAME = $(ARCHNAME)-thread 627!ENDIF 628 629!IF "$(USE_PERLIO)" == "define" 630USE_STDIO = undef 631ADD_BUILDOPT = $(ADD_BUILDOPT) -DUSE_PERLIO 632ARCHNAME = $(ARCHNAME)-perlio 633!ELSE 634#USE_STDIO = define 635#ADD_BUILDOPT = $(ADD_BUILDOPT) -DUSE_STDIO 636!ENDIF 637 638 639ARCHDIR = ..\lib\$(ARCHNAME) 640COREDIR = ..\lib\CORE 641AUTODIR = ..\lib\auto 642LIBDIR = ..\lib 643EXTDIR = ..\ext 644PODDIR = ..\pod 645EXTUTILSDIR = $(LIBDIR)\ExtUtils 646 647# 648INST_SCRIPT = $(INST_TOP)$(INST_VER)\bin 649INST_BIN = $(INST_SCRIPT)$(INST_ARCH) 650INST_LIB = $(INST_TOP)$(INST_VER)\lib 651INST_ARCHLIB = $(INST_LIB)$(INST_ARCH) 652INST_COREDIR = $(INST_ARCHLIB)\CORE 653INST_POD = $(INST_LIB)\pod 654INST_HTML = $(INST_POD)\html 655 656# 657# Options 658# 659 660OBJOUT_FLAG = -Fo 661EXEOUT_FLAG = -Fe 662 663 664#################### do not edit below this line ####################### 665############# NO USER-SERVICEABLE PARTS BEYOND THIS POINT ############## 666 667o = .obj 668 669# 670# Rules 671# 672 673.SUFFIXES : .c $(o) .nlm .lib .NLM 674 675 676# 677# various targets 678PERLIMPLIB = ..\perl.lib 679 680MINIPERL = ..\miniperl.exe 681CONFIGPM = ..\lib\Config.pm 682MINIMOD = ..\lib\ExtUtils\Miniperl.pm 683X2P = ..\x2p\a2p.nlm 684 685PL2BAT = ..\win32\bin\pl2bat.pl 686 687UTILS = \ 688 ..\utils\h2ph \ 689 ..\utils\splain \ 690 ..\utils\dprofpp \ 691 ..\utils\perlbug \ 692 ..\utils\pl2pm \ 693 ..\utils\c2ph \ 694 ..\utils\h2xs \ 695 ..\utils\perldoc \ 696 ..\utils\perlcc \ 697 ..\pod\checkpods \ 698 ..\pod\pod2html \ 699 ..\pod\pod2latex \ 700 ..\pod\pod2man \ 701 ..\pod\pod2text \ 702 ..\pod\pod2usage \ 703 ..\pod\podchecker \ 704 ..\pod\podselect \ 705 ..\x2p\find2perl \ 706 ..\x2p\s2p 707 708MAKE = nmake -nologo 709#NMAKE = $(C_COMPILER) $(INCLUDE) $(NLM_INCLUDES) $(COMPLER_FLAGS) $(ADD_LOCDEFS) $(ERROR_FLAG) $(*F).c -o $@ 710 711XCOPY = xcopy /f /r /i /d 712RCOPY = xcopy /f /r /i /e /d 713NOOP = @echo 714NULL = 715 716# 717# filenames given to xsubpp must have forward slashes (since it puts 718# full pathnames in #line strings) 719XSUBPP = ..\$(MINIPERL) -I..\..\lib ..\$(EXTUTILSDIR)\xsubpp -C++ -prototypes 720 721MICROCORE_SRC = \ 722 ..\av.c \ 723 ..\deb.c \ 724 ..\doio.c \ 725 ..\doop.c \ 726 ..\dump.c \ 727 ..\globals.c \ 728 ..\gv.c \ 729 ..\hv.c \ 730 ..\locale.c \ 731 ..\mg.c \ 732 ..\numeric.c \ 733 ..\op.c \ 734 ..\perl.c \ 735 ..\perlapi.c \ 736 ..\perly.c \ 737 ..\pp.c \ 738 ..\pp_ctl.c \ 739 ..\pp_hot.c \ 740 ..\pp_pack.c \ 741 ..\pp_sort.c \ 742 ..\pp_sys.c \ 743 ..\reentr.c \ 744 ..\regcomp.c \ 745 ..\regexec.c \ 746 ..\run.c \ 747 ..\scope.c \ 748 ..\sv.c \ 749 ..\taint.c \ 750 ..\toke.c \ 751 ..\universal.c \ 752 ..\utf8.c \ 753 ..\util.c \ 754 ..\xsutils.c 755 756#EXTRACORE_SRC = $(EXTRACORE_SRC) perllib.c 757 758!IF "$(PERL_MALLOC)" == "define" 759EXTRACORE_SRC = $(EXTRACORE_SRC) ..\malloc.c 760!ENDIF 761 762#EXTRACORE_SRC = $(EXTRACORE_SRC) ..\perlio.c 763 764!IF "$(CRYPT_SRC)" != "" 765NW_SRC = $(NW_SRC) .\$(CRYPT_SRC) 766!ENDIF 767 768DLL_SRC = $(DYNALOADER).c 769 770X2P_SRC = \ 771 ..\x2p\a2p.c \ 772 ..\x2p\hash.c \ 773 ..\x2p\str.c \ 774 ..\x2p\util.c \ 775 ..\x2p\walk.c 776 777CORE_NOCFG_H = \ 778 ..\av.h \ 779 ..\cop.h \ 780 ..\cv.h \ 781 ..\dosish.h \ 782 ..\embed.h \ 783 ..\form.h \ 784 ..\gv.h \ 785 ..\handy.h \ 786 ..\hv.h \ 787 ..\iperlsys.h \ 788 ..\mg.h \ 789 ..\nostdio.h \ 790 ..\op.h \ 791 ..\opcode.h \ 792 ..\perl.h \ 793 ..\perlapi.h \ 794 ..\perlsdio.h \ 795 ..\perlsfio.h \ 796 ..\perly.h \ 797 ..\pp.h \ 798 ..\proto.h \ 799 ..\regexp.h \ 800 ..\scope.h \ 801 ..\sv.h \ 802 ..\thread.h \ 803 ..\unixish.h \ 804 ..\utf8.h \ 805 ..\util.h \ 806 ..\warnings.h \ 807 ..\XSUB.h \ 808 ..\EXTERN.h \ 809 ..\perlvars.h \ 810 ..\intrpvar.h \ 811 ..\thrdvar.h 812 813CORE_H = $(CORE_NOCFG_H) .\config.h 814 815DLL_OBJ = $(DLL_SRC:.c=.obj) 816X2P_OBJ = $(X2P_SRC:.c=.obj) 817 818DYNAMIC_EXT = Socket IO Fcntl Opcode SDBM_File POSIX attrs Thread B re \ 819 Data/Dumper Devel/Peek ByteLoader Devel/DProf File/Glob \ 820 Storable/Storable List/Util MIME/Base64/Base64 XS/APItest/APItest \ 821 XS/Typemap/Typemap Unicode/Normalize/Normalize Sys/Hostname 822 823STATIC_EXT = DynaLoader 824NONXS_EXT = Errno 825 826DYNALOADER = $(EXTDIR)\DynaLoader\DynaLoader 827SOCKET = $(EXTDIR)\Socket\Socket 828FCNTL = $(EXTDIR)\Fcntl\Fcntl 829OPCODE = $(EXTDIR)\Opcode\Opcode 830SDBM_FILE = $(EXTDIR)\SDBM_File\SDBM_File 831IO = $(EXTDIR)\IO\IO 832POSIX = $(EXTDIR)\POSIX\POSIX 833ATTRS = $(EXTDIR)\attrs\attrs 834THREAD = $(EXTDIR)\Thread\Thread 835B = $(EXTDIR)\B\B 836RE = $(EXTDIR)\re\re 837DUMPER = $(EXTDIR)\Data\Dumper\Dumper 838ERRNO = $(EXTDIR)\Errno\Errno 839PEEK = $(EXTDIR)\Devel\Peek\Peek 840BYTELOADER = $(EXTDIR)\ByteLoader\ByteLoader 841DPROF = $(EXTDIR)\Devel\DProf\DProf 842GLOB = $(EXTDIR)\File\Glob\Glob 843HOSTNAME = $(EXTDIR)\Sys\Hostname\Hostname 844CWD = $(EXTDIR)\Cwd\Cwd 845STORABLE = $(EXTDIR)\Storable\Storable 846LISTUTIL = $(EXTDIR)\List\Util 847MIMEBASE64 = $(EXTDIR)\MIME\Base64\Base64 848XSAPITEST = $(EXTDIR)\XS\APItest\APItest 849XSTYPEMAP = $(EXTDIR)\XS\Typemap\Typemap 850UNICODENORMALIZE = $(EXTDIR)\Unicode\Normalize\Normalize 851 852ERRNO_PM_NW = $(LIBDIR)\Errno.pm 853 854EXTENSION_C = \ 855 $(SOCKET).c \ 856 $(FCNTL).c \ 857 $(OPCODE).c \ 858 $(SDBM_FILE).c \ 859 $(IO).c \ 860 $(POSIX).c \ 861 $(ATTRS).c \ 862 $(THREAD).c \ 863 $(RE).c \ 864 $(DUMPER).c \ 865 $(PEEK).c \ 866 $(B).c \ 867 $(BYTELOADER).c \ 868 $(DPROF).c \ 869 $(GLOB).c \ 870 $(HOSTNAME).c \ 871 $(CWD).c \ 872 $(STORABLE).c \ 873 $(LISTUTIL).c \ 874 $(MIMEBASE64).c \ 875 $(XSAPITEST).c \ 876 $(XSTYPEMAP).c \ 877 $(UNICODENORMALIZE).c \ 878 879EXTENSION_NPM = \ 880 $(ERRNO_PM_NW) \ 881 882POD2HTML = $(PODDIR)\pod2html 883POD2MAN = $(PODDIR)\pod2man 884POD2LATEX = $(PODDIR)\pod2latex 885POD2TEXT = $(PODDIR)\pod2text 886 887# 888# Top targets 889# 890 891all : .cleanoldfiles .\nwconfig.h $(CONFIGPM) $(NLM_NAME) $(EXTENSION_NLM) $(EXTENSION_NPM) $(TEST_NLMS) $(NETWARE_EXTNS) 892 893#------------------------------------------------------------ 894 895..\config.sh : config.nw5 $(MINIPERL) config_sh.PL 896 $(MINIPERL) -I..\lib config_sh.PL $(NW_CFG_VARS) config.nw5 > ..\config.sh 897 898# this target is for when changes to the main config.sh happen 899# edit config.{b,v,g,w}c and make this target once for each supported 900# compiler (e.g. `dmake CCTYPE=BORLAND regen_config_h`) 901regen_config_h: 902 perl config_sh.PL $(NW_CFG_VARS) $(NW_CFGSH_TMPL) > ..\config.sh 903 cd .. 904 -del /f /q perl.exe 905 perl configpm 906 cd netware 907 -del /f /q $(NW_CFGH_TMPL) 908 -mkdir $(COREDIR) 909 -perl -I..\lib config_h.PL "INST_VER=$(INST_VER)" 910 rename config.h $(NW_CFGH_TMPL) 911 912$(CONFIGPM) : $(MINIPERL) ..\config.sh config_h.PL ..\minimod.pl 913 cd .. && miniperl configpm 914 if exist lib\* $(RCOPY) lib\*.* ..\lib\$(NULL) 915 $(XCOPY) ..\*.h $(COREDIR)\*.* 916 $(XCOPY) *.h $(COREDIR)\*.* 917 $(XCOPY) ..\ext\re\re.pm $(LIBDIR)\*.* 918 if exist include\* $(RCOPY) include $(COREDIR)\*.* 919 $(MINIPERL) -I..\lib config_h.PL "INST_VER=$(INST_VER)" \ 920 || $(MAKE) /$(MAKEFLAGS) $(CONFIGPM) 921 @echo CONFIGPM Done 922 923$(MINIPERL) : 924 $(error)Please build $(MINIPERL) before continuing 925 926$(MINIMOD) : $(MINIPERL) ..\minimod.pl 927 cd .. && miniperl minimod.pl > lib\ExtUtils\Miniperl.pm 928 929..\x2p\a2p$(o) : ..\x2p\a2p.c 930 @echo $(MPKMESSAGE)...$(BLDMESG)...$@ 931 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) -I..\x2p $(ADD_LOCDEFS) $(ERROR_FLAG) $*.c -o $@ 932 @echo Built $(@) 933 934..\x2p\hash$(o) : ..\x2p\hash.c 935 @echo $(MPKMESSAGE)...$(BLDMESG)...$@ 936 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) -I..\x2p $(ADD_LOCDEFS) $(ERROR_FLAG) $*.c -o $@ 937 @echo Built $(@) 938 939..\x2p\str$(o) : ..\x2p\str.c 940 @echo $(MPKMESSAGE)...$(BLDMESG)...$@ 941 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) -I..\x2p $(ADD_LOCDEFS) $(ERROR_FLAG) $*.c -o $@ 942 @echo Built $(@) 943 944..\x2p\util$(o) : ..\x2p\util.c 945 @echo $(MPKMESSAGE)...$(BLDMESG)...$@ 946 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) -I..\x2p $(ADD_LOCDEFS) $(ERROR_FLAG) $*.c -o $@ 947 @echo Built $(@) 948 949..\x2p\walk$(o) : ..\x2p\walk.c 950 @echo $(MPKMESSAGE)...$(BLDMESG)...$@ 951 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) -I..\x2p $(ADD_LOCDEFS) $(ERROR_FLAG) $*.c -o $@ 952 @echo Built $(@) 953 954$(X2P) : $(MINIPERL) $(X2P_OBJ) 955 @echo Building $@.......... 956 $(MINIPERL) ..\x2p\find2perl.PL 957 $(MINIPERL) ..\x2p\s2p.PL 958# Linker definitions and lining come here for CODEWARRIOR 959 @echo $(BASE_IMPORT_FILES) > $*.def 960 @echo MODULE clib >> $*.def 961 @echo Import @perl.imp >> $*.def 962!ifdef USE_XDC 963 $(MPKTOOL) $(XDCFLAGS) $*.xdc 964 @echo Import Mp.imp >> $*.def 965 @echo xdcdata $*.xdc >> $*.def 966!endif 967## $(LINK) $(LDFLAGS) $(BS_CFLAGS) -desc "Awk to Perl Translator" $(X2P_OBJ) $(BLDDIR)\clibstuf.obj -commandfile $*.def -o $@ 968 $(LINK) $(LDFLAGS) -desc "Awk to Perl Translator" $(X2P_OBJ) $(BLDDIR)\clibstuf.obj -commandfile $*.def -o $@ 969 970$(EXTDIR)\DynaLoader\dl_netware.xs: dl_netware.xs 971 copy dl_netware.xs $(EXTDIR)\DynaLoader\dl_netware.xs 972 973HEADERS : 974 @echo . . . . making stdio.h and string.h 975 @copy << stdio.h >\nul 976 977/* 978 * Copyright (C) 2000-01 Novell, Inc. All Rights Reserved. 979 * 980 * You may distribute under the terms of either the GNU General Public 981 * License or the Artistic License, as specified in the README file. 982 * 983 */ 984 985/* 986 * FILENAME : stdio.h 987 * DESCRIPTION : Generated header file, do not edit. See makefile. 988 * This header file causes the includer to use clibstuf.h 989 * The purpose of clibstuf is to make sure that Perl, cgi2perl and 990 * all the perl extension nlm's (*.NLM) use the Novell Netware CLIB versions 991 * of standard functions. This code loads up a whole bunch of function pointers 992 * to point at the standard CLIB functions. 993 * Author : HYAK 994 * Date : January 2001. 995 * 996 */ 997 998 999#ifndef __Stdio_H__ 1000#define __Stdio_H__ 1001 1002 1003#include "$(NLMSDKBASE)\INCLUDE\NLM\stdio.h" 1004#include "clibsdio.h" 1005 1006 1007#endif // __Stdio_H__ 1008 1009<< 1010 @copy stdio.h $(COREDIR) 1011 1012 @copy << string.h >\nul 1013 1014/* 1015 * Copyright (C) 2000-01 Novell, Inc. All Rights Reserved. 1016 * 1017 * You may distribute under the terms of either the GNU General Public 1018 * License or the Artistic License, as specified in the README file. 1019 * 1020 */ 1021 1022/* 1023 * FILENAME : string.h 1024 * DESCRIPTION : Generated header file, do not edit. See makefile. 1025 * This header file causes the includer to use clibstuf.h 1026 * The purpose of clibstuf is to make sure that Perl, cgi2perl and 1027 * all the perl extension nlm's (*.NLM) use the Novell Netware CLIB versions 1028 * of standard functions. This code loads up a whole bunch of function pointers 1029 * to point at the standard CLIB functions. 1030 * Author : HYAK 1031 * Date : January 2001. 1032 * 1033 */ 1034 1035 1036#ifndef __String_H__ 1037#define __String_H__ 1038 1039 1040#include "$(NLMSDKBASE)\INCLUDE\NLM\string.h" 1041#include "clibstr.h" 1042 1043 1044#endif // __String_H__ 1045 1046<< 1047 @copy string.h $(COREDIR) 1048 1049 1050$(NLM_NAME): MESSAGE HEADERS $(BLDDIR)\nul $(NLM_OBJ) $(NEWTARE_OBJ_DEP) $(NEWTARE_CPP_OBJ_DEP) $(PERL_IO_OBJ_DEP) $(DLL_OBJ) \ 1051 $(PERLIMPLIB) $(EXT_MAIN_OBJ) $(PERL_TEMP_OBJ) #$(PERL_LIB_OBJ) 1052 @echo======= Linking $@ at $(MAKEDIR)\$(BLDDIR) ======= 1053# Linker definitions and lining come here for CODEWARRIOR 1054 @echo $(BASE_IMPORT_FILES) > $*.def 1055 @echo MODULE clib >> $*.def 1056 @echo MODULE netdb >> $*.def 1057!ifdef SECURITYBASE 1058 @echo MODULE nwsec >> $*.def 1059!endif #!ifdef SECURITYBASE 1060 @echo $(EXPORTS) >> $*.def 1061!ifdef USE_XDC 1062 @echo======= Creating XDC file 1063 @echo Import Mp.imp >> $*.def 1064!ifdef NLM_NAME8 1065 $(MPKTOOL) $(XDCFLAGS) $(BLDDIR)\$(NLM_NAME8).xdc 1066 @echo xdcdata $(BLDDIR)\$(NLM_NAME8).xdc >> $*.def 1067!else 1068 $(MPKTOOL) $(XDCFLAGS) $(BLDDIR)\$(NLM_NAME).xdc 1069 @echo xdcdata $(BLDDIR)\$(NLM_NAME).xdc >> $*.def 1070!endif 1071!endif 1072## $(LINK) $(LDFLAGS) $(BS_CFLAGS) -desc "Perl 5.6.1 for NetWare" $(NEWTARE_OBJ_DEP:.obj=.obj) $(NLM_OBJ:.obj=.obj) $(PERL_IO_OBJ_DEP:.obj=.obj) $(DLL_OBJ:.obj=.obj) $(NEWTARE_CPP_OBJ_DEP:.obj=.obj) -commandfile $*.def -o .\$(BLDDIR)\$@ 1073 $(LINK) $(LDFLAGS) -desc $(MODULE_DESC) $(NEWTARE_OBJ_DEP:.obj=.obj) $(NLM_OBJ:.obj=.obj) $(PERL_IO_OBJ_DEP:.obj=.obj) $(DLL_OBJ:.obj=.obj) $(NEWTARE_CPP_OBJ_DEP:.obj=.obj) -commandfile $*.def -o .\$(BLDDIR)\$@ 1074 copy splittree.pl .. 1075 $(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR) 1076 @echo ========Linked $@ ========== 1077 1078 @echo======= Finished building $(BUILT). 1079 1080# Create the debug or release directory if not existing 1081$(BLDDIR)\nul: 1082 @echo . . . . mkdir $(BLDDIR) 1083 @mkdir $(BLDDIR) 1084 @echo '$(BLDDIR)' directory created. 1085 1086MESSAGE: 1087 @echo======= $(MAKE_ACTION)ing $(NLM_NAME) at $(MAKEDIR)\$(BLDDIR) ======= 1088 1089$(PERLIMPLIB): perllib.imp 1090# @echo Building $(PERLIMPLIB)... 1091# $(LD) -type library $(NLM_OBJ) $(BLDDIR)\nw5.obj $(BLDDIR)\nwmain.obj $(BLDDIR)\nw5thread.obj $(BLDDIR)\nwtinfo.obj \ 1092# $(BLDDIR)\nwutil.obj $(BLDDIR)\interface.obj $(BLDDIR)\perllib.obj $(PERL_IO_OBJ_DEP) $(DLL_OBJ) -o $@ 1093# $(XCOPY) $(PERLIMPLIB) $(COREDIR) 1094# @echo $(PERLIMPLIB) Done 1095 1096perllib.imp : $(MINIPERL) $(CONFIGPM) ..\global.sym ..\pp.sym ..\makedef.pl 1097# $(MINIPERL) -w ..\makedef.pl PLATFORM=netware FILETYPE=def $(ADD_BUILDOPT) \ 1098# CCTYPE=$(CCTYPE) > perllib.def 1099 @echo (Perl) > perl.imp 1100 $(MINIPERL) -w ..\makedef.pl PLATFORM=netware FILETYPE=imp $(BS_CFLAGS) $(DEFINES) $(ADD_BUILDOPT) \ 1101 CCTYPE=$(CCTYPE) >> perl.imp 1102 copy perl.imp $(COREDIR) 1103 1104$(DLL_OBJ) : $(DYNALOADER).c $(CORE_H) $(EXTDIR)\DynaLoader\dlutils.c 1105 @echo $(MPKMESSAGE)...$(BLDMESG)...$@ 1106 @$(C_COMPILER) $(NLM_INCLUDES) $(COMPLER_FLAGS) $(NLM_INCLUDES) $(ADD_LOCDEFS) $(ERROR_FLAG) -I$(EXTDIR)\DynaLoader \ 1107 $(EXTDIR)\DynaLoader\$(*F).c -o $@ 1108 @echo $(@) Done. 1109 1110$(DYNALOADER).c : $(MINIPERL) $(EXTDIR)\DynaLoader\dl_netware.xs $(CONFIGPM) 1111 if not exist $(AUTODIR) mkdir $(AUTODIR) 1112 cd $(EXTDIR)\$(*B) 1113 ..\$(MINIPERL) -I..\..\lib $(*B)_pm.PL 1114 ..\$(MINIPERL) -I..\..\lib XSLoader_pm.PL 1115 cd ..\..\netware 1116 $(XCOPY) $(EXTDIR)\$(*B)\$(*B).pm $(LIBDIR)\$(NULL) 1117 $(XCOPY) $(EXTDIR)\$(*B)\XSLoader.pm $(LIBDIR)\$(NULL) 1118 cd $(EXTDIR)\$(*B) 1119 $(XSUBPP) dl_netware.xs > $(*B).c 1120 cd ..\..\netware 1121 @echo Dynaloader Done 1122 1123 1124$(PERL_IO_OBJ_DEP) : ..\$(*F).c 1125 @echo $(MPKMESSAGE) $(BLDMESG) $@ 1126 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) $(ADD_LOCDEFS) $(ERROR_FLAG) ..\$(*F).c -o $@ 1127 @echo Built $(@) 1128 1129$(NLM_OBJ) : ..\$(*F).c 1130 @echo $(MPKMESSAGE) $(BLDMESG) $@ 1131 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) $(ADD_LOCDEFS) $(ERROR_FLAG) ..\$(*F).c -o $@ 1132 @echo Built $(@) 1133 1134 1135$(NEWTARE_OBJ_DEP) : $(NW_H_FILES) $(NW_HOST_H_FILES) $(*F).c 1136 @echo $(MPKMESSAGE) $(BLDMESG) $@ 1137 $(C_COMPILER) $(COMPLER_FLAGS) $(NLM_INCLUDES) $(ADD_LOCDEFS) $(ERROR_FLAG) $(*F).c -o $@ 1138 @echo Built $(@) 1139 1140$(NEWTARE_CPP_OBJ_DEP) : $(NW_H_FILES) $(NW_HOST_H_FILES) $(*F).cpp 1141 @echo $(MPKMESSAGE) $(BLDMESG) $@ 1142 $(C_COMPILER) $(CWCPPFLAGS) $(COMPLER_FLAGS) $(NLM_INCLUDES) $(ADD_LOCDEFS) $(ERROR_FLAG) $(*F).cpp -o $@ 1143 @echo Built $(@) 1144 1145$(EXT_MAIN_OBJ) : $(CLIB_H_FILES) 1146 @echo $(MPKMESSAGE) $(BLDMESG) $@ 1147 $(C_COMPILER) $(NLM_INCLUDES) $(COMPLER_FLAGS) $(ADD_LOCDEFS) $(ERROR_FLAG) $(*F).c -o $@ 1148 $(LD) -type library $@ -o $*.lib 1149 @copy $*.lib $(COREDIR) 1150 1151# Delete any files that might have got created during building miniperl.exe 1152# config.sh will definitely be created 1153# COREDIR might have got created 1154.cleanoldfiles : 1155 -del /f /q $(PERLIMPLIB) 1156 -del /f /q ..\lib\config.pm 1157 -del /f /q ..\config.sh 1158 -del /f /q .\Main.obj 1159 -del /f /q .\Main.lib 1160 -rmdir /s /q $(AUTODIR) 1161 -rmdir /s /q $(COREDIR) 1162 -del /f /q ..\lib\core 1163 1164.\nwconfig.h : $(NW_CFGH_TMPL) 1165 @if exist .\config.h del /f /q .\config.h 1166 copy $(NW_CFGH_TMPL) config.h 1167 1168# REQUIRED WHEN WE INCLUDE CONFIGPM OR REGEN_CONFIG - sgp 1169#..\nwconfig.sh : config.nw5 $(MINIPERL) config_sh.PL 1170# $(MINIPERL) -I..\lib config_sh.PL $(NW_CFG_VARS) config.nw5 > ..\config.sh 1171# @pause 1172# cd .. 1173# del /f /q config.sh 1174# rename nwconfig.sh config.sh 1175# cd netware 1176 1177config.nw5 : $(NW_CFGSH_TMPL) 1178 copy $(NW_CFGSH_TMPL) config.nw5 1179 1180$(SOCKET_NLM): $(NLM_NAME) $(SOCKET).xs 1181 cd $(EXTDIR)\$(*B) 1182 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1183 $(MAKE) 1184 cd ..\..\netware 1185 1186$(HOSTNAME_NLM): $(NLM_NAME) $(HOSTNAME).xs 1187 cd $(EXTDIR)\Sys\$(*B) 1188 ..\..\..\miniperl -I..\..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1189 $(MAKE) 1190 cd ..\..\..\netware 1191 1192$(FCNTL_NLM): 1193 cd $(EXTDIR)\$(*B) 1194 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1195 $(MAKE) 1196 cd ..\..\netware 1197 1198$(IO_NLM): 1199 cd $(EXTDIR)\$(*B) 1200 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1201 $(MAKE) 1202 cd ..\..\netware 1203 1204$(OPCODE_NLM): 1205 cd $(EXTDIR)\$(*B) 1206 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1207 $(MAKE) 1208 cd ..\..\netware 1209 1210$(B_NLM): 1211 cd $(EXTDIR)\$(*B) 1212 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1213 $(MAKE) 1214 cd ..\..\netware 1215 1216$(DUMPER_NLM): 1217 cd $(EXTDIR)\Data\$(*B) 1218 ..\..\..\miniperl -I..\..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1219 $(MAKE) 1220 cd ..\..\..\netware 1221 1222$(PEEK_NLM): 1223 cd $(EXTDIR)\Devel\$(*B) 1224 ..\..\..\miniperl -I..\..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1225 $(MAKE) 1226 cd ..\..\..\netware 1227 1228$(RE_NLM): 1229 cd $(EXTDIR)\$(*B) 1230 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1231 $(MAKE) 1232 cd ..\..\netware 1233 1234$(BYTELOADER_NLM): 1235 cd $(EXTDIR)\$(*B) 1236 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1237 $(MAKE) 1238 cd ..\..\netware 1239 1240$(DPROF_NLM): 1241 cd $(EXTDIR)\Devel\$(*B) 1242 ..\..\..\miniperl -I..\..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1243 $(MAKE) 1244 cd ..\..\..\netware 1245 1246$(GLOB_NLM): 1247 cd $(EXTDIR)\File\$(*B) 1248 ..\..\..\miniperl -I..\..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1249 $(MAKE) 1250 cd ..\..\..\netware 1251 1252$(POSIX_NLM): 1253 cd $(EXTDIR)\$(*B) 1254 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1255 $(MAKE) 1256 cd ..\..\netware 1257 1258$(THREAD_NLM): 1259 cd $(EXTDIR)\$(*B) 1260 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1261 $(MAKE) 1262 cd ..\..\netware 1263 1264$(ATTRS_NLM): 1265 cd $(EXTDIR)\$(*B) 1266 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1267 $(MAKE) 1268 cd ..\..\netware 1269 1270$(SDBM_FILE_NLM): 1271 cd $(EXTDIR)\$(*B) 1272 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1273 $(MAKE) 1274 cd ..\..\netware 1275 1276$(CWD_NLM): 1277 cd $(EXTDIR)\$(*B) 1278 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1279 $(MAKE) 1280 cd ..\..\netware 1281 1282$(STORABLE_NLM): 1283 cd $(EXTDIR)\$(*B) 1284 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1285 $(MAKE) 1286 cd ..\..\netware 1287 1288$(LISTUTIL_NLM): 1289 cd $(EXTDIR)\List\$(*B) 1290 ..\..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1291 $(MAKE) 1292 cd ..\..\..\netware 1293 1294$(MIMEBASE64_NLM): 1295 cd $(EXTDIR)\Mime\$(*B) 1296 ..\..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1297 $(MAKE) 1298 cd ..\..\..\netware 1299 1300$(XSAPITEST_NLM): 1301 cd $(EXTDIR)\XS\$(*B) 1302 ..\..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1303 $(MAKE) 1304 cd ..\..\..\netware 1305 1306$(XSTYPEMAP_NLM): 1307 cd $(EXTDIR)\XS\$(*B) 1308 ..\..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1309 $(MAKE) 1310 cd ..\..\..\netware 1311 1312$(UNICODENORMALIZE_NLM): 1313 cd $(EXTDIR)\Unicode\$(*B) 1314 ..\..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1315 $(MAKE) 1316 cd ..\..\..\netware 1317 1318 1319$(ERRNO_PM_NW): 1320# @echo Building $@ 1321 cd $(EXTDIR)\$(*B) 1322 ..\..\miniperl -I..\..\lib Makefile.PL PERL_CORE=1 INSTALLDIRS=perl 1323 $(MAKE) 1324 cd ..\..\netware 1325 1326$(ECHO_SRC_OBJ): $*.c 1327 @echo $(MPKMESSAGE) $(BLDMESG) $@ 1328 $(C_COMPILER) $(NLM_INCLUDES) $(COMPLER_FLAGS) $(ADD_LOCDEFS) $(ERROR_FLAG) $*.c -o $@ 1329 @echo Built $(@) 1330 1331$(ECHO_NLM): $(ECHO_SRC_OBJ) 1332 @echo======= Linking $@ ======= 1333# Linker definitions and lining come here for CODEWARRIOR 1334 @echo $(BASE_IMPORT_FILES) > $*.def 1335 @echo MODULE clib >> $*.def 1336 @echo Import @perl.imp >> $*.def 1337!ifdef USE_XDC 1338 $(MPKTOOL) $(XDCFLAGS) $*.xdc 1339 @echo Import @MP.imp >> $*.def 1340 @echo xdcdata $*.xdc >> $*.def 1341!endif 1342## $(LINK) $(LDFLAGS) $(BS_CFLAGS) -desc "DOS Echo emulation for Perl testing" $(ECHO_SRC_OBJ) $(BLDDIR)\clibstuf.obj -commandfile $*.def -o $@ 1343 $(LINK) $(LDFLAGS) -desc "DOS Echo emulation for Perl testing" $(ECHO_SRC_OBJ) $(BLDDIR)\clibstuf.obj -commandfile $*.def -o $@ 1344 @echo======= Linking Complete ======= 1345 1346$(TYPE_SRC_OBJ): $*.c 1347 @echo $(MPKMESSAGE) $(BLDMESG) $@ 1348 $(C_COMPILER) $(NLM_INCLUDES) $(COMPLER_FLAGS) $(ADD_LOCDEFS) $(ERROR_FLAG) $*.c -o $@ 1349 @echo Built $(@) 1350 1351$(TYPE_NLM): $(TYPE_SRC_OBJ) 1352 @echo======= Linking $@ ======= 1353# Linker definitions and lining come here for CODEWARRIOR 1354 @echo $(BASE_IMPORT_FILES) > $*.def 1355 @echo MODULE clib >> $*.def 1356 @echo Import @perl.imp >> $*.def 1357!ifdef USE_XDC 1358 $(MPKTOOL) $(XDCFLAGS) $*.xdc 1359 @echo Import @MP.imp >> $*.def 1360 @echo xdcdata $*.xdc >> $*.def 1361!endif 1362## $(LINK) $(LDFLAGS) $(BS_CFLAGS) -desc "DOS Type emulation for Perl testing" $(TYPE_SRC_OBJ) $(BLDDIR)\clibstuf.obj -commandfile $*.def -o $@ 1363 $(LINK) $(LDFLAGS) -desc "DOS Type emulation for Perl testing" $(TYPE_SRC_OBJ) $(BLDDIR)\clibstuf.obj -commandfile $*.def -o $@ 1364 @echo======= Linking Complete ======= 1365 1366 1367# Build NetWare specific extensions 1368$(CGI2PERL_NLM): 1369!if "$(NW_EXTNS)"=="yes" 1370 cd $(*B) 1371 ..\..\miniperl -I..\..\lib Makefile.PL "CCCDLFLAGS=-bool on -lang c++" PERL_CORE=1 INSTALLDIRS=perl 1372 $(MAKE) 1373 cd ..\..\netware 1374!endif 1375 1376$(PERL2UCS_NLM): 1377!if "$(NW_EXTNS)"=="yes" 1378 cd $(*B) 1379 ..\..\miniperl -I..\..\lib Makefile.PL "CCCDLFLAGS=-bool on -lang c++" PERL_CORE=1 INSTALLDIRS=perl 1380 $(MAKE) 1381 cd ..\..\netware 1382!endif 1383 1384$(UCSExt_NLM): 1385!if "$(NW_EXTNS)"=="yes" 1386 cd $(*B) 1387 ..\..\miniperl -I..\..\lib Makefile.PL "CCCDLFLAGS=-bool on -lang c++" PERL_CORE=1 INSTALLDIRS=perl 1388 $(MAKE) 1389 cd ..\..\netware 1390!endif 1391 1392nwclean: 1393 -rmdir /s /q $(REL_DIR) 1394 -rmdir /s /q $(DEB_DIR) 1395 @if exist .\stdio.h del /f /q .\stdio.h 1396 @if exist .\string.h del /f /q .\string.h 1397 @if exist .\config.h del /f /q .\config.h 1398 @if exist .\config.nw5 del /f /q .\config.nw5 1399 @if exist .\perl.imp del /f /q .\perl.imp 1400 -del /f /q *.obj *.lib *.def *.sym *.map *.xdc *.err *.nlm 1401 cd testnlm\echo 1402 -del /f /q *.obj *.map *.link *.options *.nlm *.sym *.xdc *.err *.lib *.def *.pdb *.bs 1403 cd ..\type 1404 -del /f /q *.obj *.map *.link *.options *.nlm *.sym *.xdc *.err *.lib *.def *.pdb *.bs 1405 cd ..\..\ 1406 1407utils: $(BLDDIR)\$(NLM_NAME8).$(NLM_EXT) $(X2P) 1408 cd ..\utils 1409 $(MAKE) PERL=$(MINIPERL) 1410 cd ..\pod 1411 copy ..\README.amiga .\perlamiga.pod 1412 copy ..\README.cygwin .\perlcygwin.pod 1413 copy ..\README.dos .\perldos.pod 1414 copy ..\README.hpux .\perlhpux.pod 1415# copy ..\README.machten .\perlmachten.pod 1416 copy ..\README.os2 .\perlos2.pod 1417 copy ..\vms\perlvms.pod .\perlvms.pod 1418 copy ..\README.win32 .\perlwin32.pod 1419 copy ..\README.netware .\perlnw5.pod 1420 $(MAKE) -f ..\win32\pod.mak converters 1421 1422 cd ..\lib 1423 $(MINIPERL) lib_pm.PL 1424 cd ..\netware 1425 $(MINIPERL) $(PL2BAT) $(UTILS) 1426 1427distclean: clean nwclean 1428 -del /f /q $(PERLIMPLIB) ..\miniperl.lib $(MINIMOD) 1429 -del /f /q $(EXTENSION_NPM) 1430 -del /f /q $(EXTENSION_C) $(DYNALOADER).c $(ERRNO).pm 1431 -del /f /q $(EXTDIR)\DynaLoader\dl_netware.xs 1432 -del /f /q $(EXTDIR)\DynaLoader\dl_win32.xs 1433 -del /f /q $(EXTDIR)\DynaLoader\DynaLoader.pm 1434 -del /f /q $(EXTDIR)\DynaLoader\XSLoader.pm 1435 -del /f /q $(LIBDIR)\.exists $(LIBDIR)\attrs.pm $(LIBDIR)\DynaLoader.pm 1436 -del /f /q $(LIBDIR)\XSLoader.pm 1437 -del /f /q $(LIBDIR)\Fcntl.pm $(LIBDIR)\IO.pm $(LIBDIR)\Opcode.pm 1438 -del /f /q $(LIBDIR)\ops.pm $(LIBDIR)\Safe.pm 1439 -del /f /q $(LIBDIR)\SDBM_File.pm $(LIBDIR)\Socket.pm $(LIBDIR)\POSIX.pm 1440 -del /f /q $(LIBDIR)\B.pm $(LIBDIR)\O.pm $(LIBDIR)\re.pm 1441 -del /f /q $(LIBDIR)\Data\Dumper.pm $(LIBDIR)\ByteLoader.pm 1442 -del /f /q $(LIBDIR)\Devel\Peek.pm $(LIBDIR)\Devel\DProf.pm 1443 -del /f /q $(LIBDIR)\File\Glob.pm 1444 -del /f /q $(LIBDIR)\Unicode\Normalize.pm 1445 -rmdir /s /q $(LIBDIR)\IO 1446 -rmdir /s /q $(LIBDIR)\Thread 1447 -rmdir /s /q $(LIBDIR)\B 1448 -rmdir /s /q $(LIBDIR)\Data 1449 -del /f /q $(PODDIR)\*.html 1450 -del /f /q $(PODDIR)\*.bat 1451 cd ..\utils 1452 -del /f /q h2ph splain perlbug pl2pm c2ph h2xs perldoc dprofpp 1453 -del /f /q *.bat 1454 cd ..\netware 1455 cd ..\x2p 1456 -del /f /q find2perl s2p 1457 -del /f /q *.bat *.exe 1458 -del /f /q *.obj *.map *.link *.xdc *.err 1459 cd ..\netware 1460 -del /f /q ..\config.sh ..\splittree.pl dlutils.c config.h.new 1461 -del /f /q $(CONFIGPM) 1462 -del /f /q bin\*.bat 1463 cd $(EXTDIR) 1464 -del /s /q /f *.lib *.def *.map *.pdb *.bs Makefile *$(o) pm_to_blib *.xdc *.err *.obj *.sym 1465 cd ..\netware 1466!if "$(NW_EXTNS)"=="yes" 1467 cd cgi2perl 1468 -del /f /q *.obj *.bs Makefile *$(o) *.c pm_to_blib *.xdc *.err *.sym *.map *.def *.lib *.pdb 1469 cd .. 1470 cd Perl2UCS 1471 -del /f /q *.obj *.bs Makefile *$(o) *.c pm_to_blib *.xdc *.err *.sym *.map *.def *.lib *.pdb 1472 cd ..\..\netware 1473 cd UCSExt 1474 -del /f /q *.obj *.bs Makefile *$(o) *.c pm_to_blib *.xdc *.err *.sym *.map *.c 1475 cd ..\..\netware 1476!endif 1477 -rmdir /s /q $(AUTODIR) 1478 -rmdir /s /q $(COREDIR) 1479 -del /f /q ..\config.sh 1480 1481installwin: 1482 $(MINIPERL) -I..\lib ..\installperl 1483 1484install : utils installwin perlimp 1485 1486perlimp : 1487 copy perl.imp $(INST_COREDIR) 1488 1489installnw: 1490 $(MINIPERL) -I..\lib ..\installperl -netware 1491 1492install_tests : 1493 cd ..\t 1494 xcopy /f /r /i /s /d *.* $(INST_NW_TOP2)\scripts\t 1495 cd ..\lib 1496 xcopy /f /r /i /s /d *.t $(INST_NW_TOP2)\scripts\t\lib 1497 cd ..\ext 1498 xcopy /f /r /i /s /d *.t $(INST_NW_TOP2)\scripts\t\ext 1499 cd ..\netware\t 1500 xcopy /f /r /i /s /d *.pl $(INST_NW_TOP2)\scripts\t 1501 cd .. 1502 1503nwinstall: utils installnw install_tests 1504 1505inst_lib : $(CONFIGPM) 1506 copy ..\win32\splittree.pl .. 1507 $(MINIPERL) -I..\lib ..\splittree.pl "../LIB" $(AUTODIR) 1508 $(RCOPY) ..\lib $(INST_LIB)\*.* 1509 1510clean : 1511 -@erase miniperlmain$(o) 1512 -@erase /f config.h 1513 -@erase $(DLL_OBJ) 1514 -@erase ..\*$(o) ..\*.lib ..\*.exp *$(o) *.lib *.exp *.res 1515 -@erase ..\t\*.exe ..\t\*.dll ..\t\*.bat 1516 -@erase ..\x2p\*.nlm ..\x2p\*.bat 1517