This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
devel/devtools.pl: Add debugging info
[perl5.git] / make_ext.pl
index 3175340..0280a02 100644 (file)
@@ -54,6 +54,14 @@ my $ext_dirs_re = '(?:' . join('|', @ext_dirs) . ')';
 #       '# XXX hack for dependency # ordering'
 # below.
 #
+# The basic logic is:
+#   1) if there's a Makefile.PL in git for the module, use it. and call make
+#   2) If not, auto-generate one (normally)
+#   3) unless the auto-generation code figures out that the extension is
+#      *really* simple, in which case don't.  This will be for pure perl
+#      modules, and all that is needed to be done is to copy from the source
+#      to the dest directories.
+#
 # It may be deleted in a later release of perl so try to
 # avoid using it for other purposes.
 
@@ -209,18 +217,21 @@ elsif (IS_VMS) {
 
 { # XXX hack for dependency ordering
     # Cwd needs to be built before Encode recurses into subdirectories.
-    # Pod::Simple needs to be built before Pod::Functions
+    # Pod::Simple needs to be built before Pod::Functions, but after 'if'
     # lib needs to be built before IO-Compress
     # This seems to be the simplest way to ensure this ordering:
-    my (@first, @other);
+    my (@first, @second, @other);
     foreach (@extspec) {
-       if ($_ eq 'Cwd' || $_ eq 'Pod/Simple' || $_ eq 'lib') {
+       if ($_ eq 'Cwd' || $_ eq 'if' || $_ eq 'lib') {
            push @first, $_;
+        }
+       elsif ($_ eq 'Pod/Simple') {
+           push @second, $_;
        } else {
            push @other, $_;
        }
     }
-    @extspec = (@first, @other);
+    @extspec = (@first, @second, @other);
 }
 
 if ($Config{osname} eq 'catamount' and @extspec) {