@@ -97,20 +97,9 @@ See L</Usage Hints for Perl on Windows> below for general hints about this.
97
97
98
98
You need a "make" program to build the sources. If you are using
99
99
Visual C++ or the Windows SDK tools, you can use nmake supplied with Visual C++
100
- or Windows SDK. You may also use, for Visual C++ or Windows SDK, dmake or gmake
101
- instead of nmake. dmake is open source software, but is not included with
102
- Visual C++ or Windows SDK. Builds using gcc need dmake or gmake. nmake is not
103
- supported for gcc builds. Parallel building is only supported with dmake and
104
- gmake, not nmake. When using dmake it is recommended to use dmake 4.13 or newer
105
- for parallel building. Older dmakes, in parallel mode, have very high CPU usage
106
- and pound the disk/filing system with duplicate I/O calls in an aggressive
107
- polling loop.
108
-
109
- A port of dmake for Windows is available from:
110
-
111
- L<https://metacpan.org/release/dmake>
112
-
113
- Fetch and install dmake somewhere on your path.
100
+ or Windows SDK. You may also use gmake instead of nmake. Builds using gcc need
101
+ gmake. nmake is not supported for gcc builds. Parallel building is only
102
+ supported with gmake, not nmake.
114
103
115
104
=item Command Shell
116
105
@@ -321,7 +310,8 @@ MinGW64 (version 4.4.3 or later). It can be downloaded here:
321
310
L<http://www.mingw.org/>
322
311
L<http://www.mingw-w64.org/>
323
312
324
- You also need dmake or gmake. See L</"Make"> above on how to get it.
313
+ You also need gmake. Usually it comes with MinGW but its executable may have
314
+ a different name, such as mingw32-make.exe.
325
315
326
316
Note that the MinGW build currently fails with version 6.3.0 or later.
327
317
@@ -354,15 +344,14 @@ unlike GCC.
354
344
Make sure you are in the "win32" subdirectory under the perl toplevel.
355
345
This directory contains a "Makefile" that will work with
356
346
versions of nmake that come with Visual C++ or the Windows SDK, and
357
- a GNU make "GNUmakefile" or dmake "makefile.mk" that will work for all
358
- supported compilers. The defaults in the gmake and dmake makefile are
359
- setup to build using MinGW/gcc.
347
+ a GNU make "GNUmakefile" that will work for all supported compilers.
348
+ The defaults in the gmake makefile are setup to build using MinGW/gcc.
360
349
361
350
=item *
362
351
363
- Edit the GNUmakefile, makefile.mk (or Makefile, if you're using nmake)
364
- and change the values of INST_DRV and INST_TOP. You can also enable
365
- various build flags. These are explained in the makefiles.
352
+ Edit the GNUmakefile (or Makefile, if you're using nmake) and change the values
353
+ of INST_DRV and INST_TOP. You can also enable various build flags. These are
354
+ explained in the makefiles.
366
355
367
356
Note that it is generally not a good idea to try to build a perl with
368
357
INST_DRV and INST_TOP set to a path that already exists from a previous
@@ -378,7 +367,7 @@ F<lib> directories.
378
367
379
368
If building with the cross-compiler provided by
380
369
mingw-w64.org you'll need to uncomment the line that sets
381
- GCCCROSS in the makefile.mk . Do this only if it's the cross-compiler - ie
370
+ GCCCROSS in the GNUmakefile . Do this only if it's the cross-compiler - ie
382
371
only if the bin folder doesn't contain a gcc.exe. (The cross-compiler
383
372
does not provide a gcc.exe, g++.exe, ar.exe, etc. Instead, all of these
384
373
executables are prefixed with 'x86_64-w64-mingw32-'.)
@@ -394,21 +383,18 @@ Be sure to read the instructions near the top of the makefiles carefully.
394
383
395
384
=item *
396
385
397
- Type "dmake" (" gmake" for GNU make, or "nmake" if you are using that make).
386
+ Type "gmake" ( or "nmake" if you are using that make).
398
387
399
388
This should build everything. Specifically, it will create perl.exe,
400
389
perl533.dll at the perl toplevel, and various other extension dll's
401
390
under the lib\auto directory. If the build fails for any reason, make
402
391
sure you have done the previous steps correctly.
403
392
404
- To try dmake 's parallel mode, type "dmake -P2 ", where 2, is the maximum number
393
+ To try gmake 's parallel mode, type "gmake -j2 ", where 2, is the maximum number
405
394
of parallel jobs you want to run. A number of things in the build process will
406
395
run in parallel, but there are serialization points where you will see just 1
407
396
CPU maxed out. This is normal.
408
397
409
- Similarly you can build in parallel with GNU make, type "gmake -j2" to
410
- build with two parallel jobs, or higher for more.
411
-
412
398
If you are advanced enough with building C code, here is a suggestion to speed
413
399
up building perl, and the later C<make test>. Try to keep your PATH environmental
414
400
variable with the least number of folders possible (remember to keep your C
@@ -420,7 +406,7 @@ is the most commonly launched program during the build and later testing.
420
406
421
407
=head2 Testing Perl on Windows
422
408
423
- Type "dmake test" (or "gmake test", "nmake test"). This will run most
409
+ Type "gmake test" (or "nmake test"). This will run most
424
410
of the tests from the testsuite (many tests will be skipped).
425
411
426
412
There should be no test failures.
@@ -448,7 +434,7 @@ native "cmd.exe", or if you are building from a path that contains
448
434
spaces. So don't do that.
449
435
450
436
If you are running the tests from a emacs shell window, you may see
451
- failures in op/stat.t. Run "dmake test-notty" in that case.
437
+ failures in op/stat.t. Run "gmake test-notty" in that case.
452
438
453
439
Furthermore, you should make sure that during C<make test> you do not
454
440
have any GNU tool packages in your path: some toolkits like Unixutils
@@ -467,7 +453,7 @@ Please report any other failures as described under L</BUGS AND CAVEATS>.
467
453
468
454
=head2 Installation of Perl on Windows
469
455
470
- Type "dmake install" (or " gmake install", "nmake install"). This will
456
+ Type "gmake install" ( "nmake install"). This will
471
457
put the newly built perl and the libraries under whatever C<INST_TOP>
472
458
points to in the Makefile. It will also install the pod documentation
473
459
under C<$INST_TOP\$INST_VER\lib\pod> and HTML versions of the same
@@ -650,25 +636,13 @@ may not provide a testsuite (so "$MAKE test" may not do anything or
650
636
fail), but most serious ones do.
651
637
652
638
It is important that you use a supported 'make' program, and
653
- ensure Config.pm knows about it. If you don't have nmake, you can
654
- either get dmake from the location mentioned earlier or get an
655
- old version of nmake reportedly available from:
656
-
657
- L<http://download.microsoft.com/download/vc15/Patch/1.52/W95/EN-US/nmake15.exe>
658
-
659
- Another option is to use the make written in Perl, available from
660
- CPAN.
661
-
662
- L<https://www.cpan.org/modules/by-module/Make/>
663
-
664
- You may also use dmake or gmake. See L</"Make"> above on how to get it.
639
+ ensure Config.pm knows about it.
665
640
666
641
Note that MakeMaker actually emits makefiles with different syntax
667
642
depending on what 'make' it thinks you are using. Therefore, it is
668
643
important that one of the following values appears in Config.pm:
669
644
670
645
make='nmake' # MakeMaker emits nmake syntax
671
- make='dmake' # MakeMaker emits dmake syntax
672
646
any other value # MakeMaker emits generic make syntax
673
647
(e.g GNU make, or Perl make)
674
648
0 commit comments