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