In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/458ea8f78a2917d05a5d5ff7877f279f6403eb67?hp=5173674b1cb46b59301b559929904bc67fa15056>

- Log -----------------------------------------------------------------
commit 458ea8f78a2917d05a5d5ff7877f279f6403eb67
Author: Steve Hay <[email protected]>
Date:   Sun Mar 12 15:37:57 2017 +0000

    Make DEFAULT_INC_EXCLUDES_DOT the default on Windows
    
    and provide a makefile option of the same name to control it. It is set to
    'define' by default, but can be commented out or set to 'undef' in the
    usual manner to switch it off and return to the legacy default behaviour
    of including '.' at the end of @INC.
-----------------------------------------------------------------------

Summary of changes:
 t/win32/runenv.t  |  7 ++++++-
 win32/GNUmakefile |  8 ++++++++
 win32/Makefile    | 11 +++++++++++
 win32/Makefile.ce | 11 +++++++++++
 win32/config_H.ce |  6 ++++++
 win32/config_H.gc |  6 ++++++
 win32/config_H.vc |  6 ++++++
 win32/makefile.mk |  8 ++++++++
 8 files changed, 62 insertions(+), 1 deletion(-)

diff --git a/t/win32/runenv.t b/t/win32/runenv.t
index 0e2b0ca015..514eda0c20 100644
--- a/t/win32/runenv.t
+++ b/t/win32/runenv.t
@@ -206,7 +206,12 @@ is ($err, '', 'No errors when determining @INC');
 
 my @default_inc = split /\n/, $out;
 
-is ($default_inc[-1], '.', '. is last in @INC');
+if ($Config{default_inc_excludes_dot}) {
+    ok !(grep { $_ eq '.' } @default_inc), '. is not in @INC';
+}
+else {
+    is ($default_inc[-1], '.', '. is last in @INC');
+}
 
 my $sep = $Config{path_sep};
 my @test_cases = (
diff --git a/win32/GNUmakefile b/win32/GNUmakefile
index 0821b4d461..c5374ef8a0 100644
--- a/win32/GNUmakefile
+++ b/win32/GNUmakefile
@@ -136,6 +136,12 @@ USE_LARGE_FILES    := define
 #USE_LONG_DOUBLE :=define
 
 #
+# Comment this out if you want the legacy default behavior of including '.' at
+# the end of @INC.
+#
+DEFAULT_INC_EXCLUDES_DOT := define
+
+#
 # Uncomment this if you want to disable looking up values from
 # HKEY_CURRENT_USER\Software\Perl and HKEY_LOCAL_MACHINE\Software\Perl in
 # the Registry.
@@ -296,6 +302,7 @@ USE_PERLIO  ?= undef
 USE_LARGE_FILES        ?= undef
 USE_64_BIT_INT ?= undef
 USE_LONG_DOUBLE        ?= undef
+DEFAULT_INC_EXCLUDES_DOT ?= undef
 USE_NO_REGISTRY        ?= undef
 
 ifeq ($(USE_IMP_SYS),define)
@@ -1128,6 +1135,7 @@ CFG_VARS  =                                       \
                "uselongdouble=$(USE_LONG_DOUBLE)"      \
                "uselargefiles=$(USE_LARGE_FILES)"      \
                "usesitecustomize=$(USE_SITECUST)"      \
+               "default_inc_excludes_dot=$(DEFAULT_INC_EXCLUDES_DOT)"  \
                "LINK_FLAGS=$(subst ",\",$(LINK_FLAGS))"\
                "optimize=$(subst ",\",$(OPTIMIZE))"    \
                "ARCHPREFIX=$(ARCHPREFIX)"              \
diff --git a/win32/Makefile b/win32/Makefile
index e13291bc2d..1fa2bfe515 100644
--- a/win32/Makefile
+++ b/win32/Makefile
@@ -96,6 +96,12 @@ USE_LARGE_FILES      = define
 #USE_64_BIT_INT        = define
 
 #
+# Comment this out if you want the legacy default behavior of including '.' at
+# the end of @INC.
+#
+DEFAULT_INC_EXCLUDES_DOT = define
+
+#
 # Uncomment this if you want to disable looking up values from
 # HKEY_CURRENT_USER\Software\Perl and HKEY_LOCAL_MACHINE\Software\Perl in
 # the Registry.
@@ -305,6 +311,10 @@ USE_LARGE_FILES    = undef
 USE_64_BIT_INT = undef
 !ENDIF
 
+!IF "$(DEFAULT_INC_EXCLUDES_DOT)" == ""
+DEFAULT_INC_EXCLUDES_DOT = undef
+!ENDIF
+
 !IF "$(USE_NO_REGISTRY)" == ""
 USE_NO_REGISTRY        = undef
 !ENDIF
@@ -905,6 +915,7 @@ CFG_VARS    =                                       \
                "uselongdouble=undef"                   \
                "uselargefiles=$(USE_LARGE_FILES)"      \
                "usesitecustomize=$(USE_SITECUST)"      \
+               "default_inc_excludes_dot=$(DEFAULT_INC_EXCLUDES_DOT)"  \
                "LINK_FLAGS=$(LINK_FLAGS:"=\")"         \
                "optimize=$(OPTIMIZE:"=\")"             \
                "WIN64=$(WIN64)"
diff --git a/win32/Makefile.ce b/win32/Makefile.ce
index 0762f2c73f..38419a59a5 100644
--- a/win32/Makefile.ce
+++ b/win32/Makefile.ce
@@ -37,6 +37,12 @@ CCLIBDIR     = $(CCHOME)\lib
 CECOPY     = cecopy
 
 #
+# comment this out if you want the legacy default behavior of including '.' at
+# the end of @INC.
+#
+DEFAULT_INC_EXCLUDES_DOT = define
+
+#
 # set this if you wish to use perl's malloc
 # This will make perl run few times faster
 # WARNING: Turning this on/off WILL break binary compatibility with extensions
@@ -438,6 +444,10 @@ CRYPT_FLAG = -DHAVE_DES_FCRYPT
 PERL_MALLOC    = undef
 !ENDIF
 
+!IF "$(DEFAULT_INC_EXCLUDES_DOT)" == ""
+DEFAULT_INC_EXCLUDES_DOT = undef
+!ENDIF
+
 !IF "$(USE_MULTI)" == ""
 USE_MULTI      = undef
 !ENDIF
@@ -754,6 +764,7 @@ CFG_VARS = \
  "usemultiplicity=$(USE_MULTI)" \
  "use64bitint=undef" \
  "uselargefiles=undef" \
+ "default_inc_excludes_dot=$(DEFAULT_INC_EXCLUDES_DOT)" \
  "LINK_FLAGS=$(LDLIBPATH) $(LINK_FLAGS) $(SUBSYS)" \
  "optimize=$(OPTIMIZE)" \
  "WIN64=$(WIN64)"
diff --git a/win32/config_H.ce b/win32/config_H.ce
index f1434899bd..6f368ad270 100644
--- a/win32/config_H.ce
+++ b/win32/config_H.ce
@@ -2660,6 +2660,12 @@
  */
 /*#define HAS_WRITEV           /**/
 
+/* DEFAULT_INC_EXCLUDES_DOT:
+ *     This symbol, if defined, removes the legacy default behavior of
+ *     including '.' at the end of @INC.
+ */
+/*#define DEFAULT_INC_EXCLUDES_DOT     /**/
+
 /* USE_DYNAMIC_LOADING:
  *     This symbol, if defined, indicates that dynamic loading of
  *     some sort is available.
diff --git a/win32/config_H.gc b/win32/config_H.gc
index 591e72d5a1..933f0b7602 100644
--- a/win32/config_H.gc
+++ b/win32/config_H.gc
@@ -4308,6 +4308,12 @@
  */
 /*#define HAS_WRITEV           / **/
 
+/* DEFAULT_INC_EXCLUDES_DOT:
+ *     This symbol, if defined, removes the legacy default behavior of
+ *     including '.' at the end of @INC.
+ */
+/*#define DEFAULT_INC_EXCLUDES_DOT     / **/
+
 /* USE_DYNAMIC_LOADING:
  *     This symbol, if defined, indicates that dynamic loading of
  *     some sort is available.
diff --git a/win32/config_H.vc b/win32/config_H.vc
index b87c58e874..5dfccf169e 100644
--- a/win32/config_H.vc
+++ b/win32/config_H.vc
@@ -4300,6 +4300,12 @@
  */
 /*#define HAS_WRITEV           / **/
 
+/* DEFAULT_INC_EXCLUDES_DOT:
+ *     This symbol, if defined, removes the legacy default behavior of
+ *     including '.' at the end of @INC.
+ */
+/*#define DEFAULT_INC_EXCLUDES_DOT     / **/
+
 /* USE_DYNAMIC_LOADING:
  *     This symbol, if defined, indicates that dynamic loading of
  *     some sort is available.
diff --git a/win32/makefile.mk b/win32/makefile.mk
index 2685e53ec2..aceda12c26 100644
--- a/win32/makefile.mk
+++ b/win32/makefile.mk
@@ -108,6 +108,12 @@ USE_LARGE_FILES    *= define
 #USE_LONG_DOUBLE *=define
 
 #
+# Comment this out if you want the legacy default behavior of including '.' at
+# the end of @INC.
+#
+DEFAULT_INC_EXCLUDES_DOT *= define
+
+#
 # Uncomment this if you want to disable looking up values from
 # HKEY_CURRENT_USER\Software\Perl and HKEY_LOCAL_MACHINE\Software\Perl in
 # the Registry.
@@ -304,6 +310,7 @@ USE_IMP_SYS *= undef
 USE_LARGE_FILES        *= undef
 USE_64_BIT_INT *= undef
 USE_LONG_DOUBLE        *= undef
+DEFAULT_INC_EXCLUDES_DOT *= undef
 USE_NO_REGISTRY        *= undef
 
 
@@ -1096,6 +1103,7 @@ CFG_VARS  =                                       \
                uselongdouble=$(USE_LONG_DOUBLE)        ~       \
                uselargefiles=$(USE_LARGE_FILES)        ~       \
                usesitecustomize=$(USE_SITECUST)        ~       \
+               default_inc_excludes_dot=$(DEFAULT_INC_EXCLUDES_DOT)    ~       
\
                LINK_FLAGS=$(LINK_FLAGS)        ~       \
                optimize=$(OPTIMIZE)    ~       \
                ARCHPREFIX=$(ARCHPREFIX)        ~       \

--
Perl5 Master Repository

Reply via email to