develooper Front page | perl.perl5.porters | Postings from October 2007

[perl #47013] MakeMaker doesn't play nice on MacOSX - case sensitivity of "core"

From:
craig deforest
Date:
October 29, 2007 14:13
Subject:
[perl #47013] MakeMaker doesn't play nice on MacOSX - case sensitivity of "core"
Message ID:
rt-3.6.HEAD-4732-1193683759-1423.47013-75-0@perl.org
# New Ticket Created by  craig deforest 
# Please include the string:  [perl #47013]
# in the subject line of all future correspondence about this issue. 
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=47013 >


MakeMaker generates Makefiles whose "make clean" function executes  
"rm -rf" indiscriminately on anything likely to be a temporary file.   
This includes the file "core".

Unfortunately, MacOSX by default uses case-preserving-but-insensitive  
files, so entire module subtrees that match /^(.*::)?Core(::.*)?$/i  
are automatically removed by "make clean" under MacOSX.

Ideally, MakeMaker should distinguish between things that are likely  
to be temporary directories and things that are likely to be  
temporary files.  The former should be "rm -rf"ed and the latter  
should be merely "rm -f"ed.  That would eliminate the problem while  
still eliminating temporary files.

Well, OK, ideally MacOS would support case sensitivity by default,  
but in light of the fact it doesn't, MakeMaker ought to be a little  
more careful about trampling things called "Core".

----Perl -V output follows----

Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
   Platform:
     osname=darwin, osvers=8.0, archname=darwin-thread-multi-2level
     uname='darwin b48.apple.com 8.0 darwin kernel version 8.3.0: mon  
oct 3 20:04
:04 pdt 2005; root:xnu-792.6.22.obj~2release_ppc power macintosh  
powerpc '
     config_args='-ds -e -Dprefix=/usr -Dccflags=-g  -pipe  - 
Dldflags=-Dman3ext=3
pm -Duseithreads -Duseshrplib'
     hint=recommended, useposix=true, d_sigaction=define
     usethreads=define use5005threads=undef useithreads=define  
usemultiplicity=de
fine
     useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
     use64bitint=undef use64bitall=undef uselongdouble=undef
     usemymalloc=n, bincompat5005=undef
   Compiler:
     cc='cc', ccflags ='-g -pipe -fno-common -DPERL_DARWIN -no-cpp- 
precomp -fno-s
trict-aliasing -I/usr/local/include',
     optimize='-O3',
     cppflags='-no-cpp-precomp -g -pipe -fno-common -DPERL_DARWIN -no- 
cpp-precomp
-fno-strict-aliasing -I/usr/local/include'
     ccversion='', gccversion='4.0.1 (Apple Computer, Inc. build  
5363) (+4864187)
', gccosandvers=''
     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
     ivtype='long', ivsize=4, nvtype='double', nvsize=8,  
Off_t='off_t', lseeksize
=8
     alignbytes=8, prototype=define
   Linker and Libraries:
     ld='env MACOSX_DEPLOYMENT_TARGET=10.3 cc', ldflags ='-L/usr/ 
local/lib'
     libpth=/usr/local/lib /usr/lib
     libs=-ldbm -ldl -lm -lc
     perllibs=-ldl -lm -lc
     libc=/usr/lib/libc.dylib, so=dylib, useshrplib=true,  
libperl=libperl.dylib
     gnulibc_version=''
   Dynamic Linking:
     dlsrc=dl_dlopen.xs, dlext=bundle, d_dlsymun=undef, ccdlflags=' '
     cccdlflags=' ', lddlflags='-bundle -undefined dynamic_lookup -L/ 
usr/local/li
b'


Characteristics of this binary (from libperl):
   Compile-time options: MULTIPLICITY USE_ITHREADS USE_LARGE_FILES  
PERL_IMPLICIT_
CONTEXT
   Locally applied patches:
         23953 - fix for File::Path::rmtree CAN-2004-0452 security issue
         33990 - fix for setuid perl security issues
         SPRINTF0 - fixes for sprintf formatting issues - CVE-2005-3962
   Built under darwin
   Compiled at Dec  7 2006 09:01:25
   %ENV:
     PERL5LIB="/sw/lib/perl5:/sw/lib/perl5/darwin"
   @INC:
     /sw/lib/perl5
     /sw/lib/perl5/darwin
     /System/Library/Perl/5.8.6/darwin-thread-multi-2level
     /System/Library/Perl/5.8.6
     /Library/Perl/5.8.6/darwin-thread-multi-2level
     /Library/Perl/5.8.6
     /Library/Perl
     /Network/Library/Perl/5.8.6/darwin-thread-multi-2level
     /Network/Library/Perl/5.8.6
     /Network/Library/Perl
     /System/Library/Perl/Extras/5.8.6/darwin-thread-multi-2level
     /System/Library/Perl/Extras/5.8.6
     /Library/Perl/5.8.1
     .




nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About