perl

 view release on metacpan or  search on metacpan

Configure  view on Meta::CPAN

{
    nl_langinfo(RADIXCHAR);
}

int main() {
    char * main_buffer;
    char save_main_buffer[1000];
    pthread_t subthread;
    pthread_attr_t attr;

    main_buffer = nl_langinfo_l(CODESET, newlocale(LC_ALL_MASK, "C", 0));

    /* If too large for our generous allowance, just assume we don't have
     * it. */
    if (strlen(main_buffer) >= sizeof(save_main_buffer)) {
        exit(1);
    }

    strcpy(save_main_buffer, main_buffer);

    if (pthread_attr_init(&attr) != 0) {

Cross/Makefile-cross-SH  view on Meta::CPAN

.PHONY: install install-strip install-all install-verbose install-silent \
	no-install install.perl install.man install.html

META.yml:	Porting/makemeta Porting/Maintainers.pl Porting/Maintainers.pm
	$(LDLIBPTH) ./miniperl -Ilib Porting/makemeta -y

META.json:	Porting/makemeta Porting/Maintainers.pl Porting/Maintainers.pm
	$(LDLIBPTH) ./miniperl -Ilib Porting/makemeta -j

install-strip:
	$(MAKE) STRIPFLAGS=-s install DESTDIR="$(DESTDIR)"

install install-all:
	$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) DESTDIR="$(DESTDIR)"

install-verbose:
	$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-V DESTDIR="$(DESTDIR)"

install-silent:
	$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-S DESTDIR="$(DESTDIR)"

no-install:
	$(MAKE) install.perl install.man STRIPFLAGS=$(STRIPFLAGS) INSTALLFLAGS=-n DESTDIR="$(DESTDIR)"

# Set this to an empty string to avoid an attempt of rebuild before install
INSTALL_DEPENDENCE = all

install.perl:	$(INSTALL_DEPENDENCE) installperl
	$(LDLIBPTH) ./perl installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
	-@test ! -s extras.lst || $(MAKE) extras.install

install.man:	all installman
	$(LDLIBPTH) ./perl installman --destdir=$(DESTDIR) $(INSTALLFLAGS)

# XXX Experimental. Hardwired values, but useful for testing.
# Eventually Configure could ask for some of these values.
install.html: all installhtml
	-@test -f README.vms && cd vms && $(LNS) ../README.vms README_vms.pod && cd ..
	$(LDLIBPTH) ./perl installhtml   \
      --podroot=. --podpath=. --recurse  \
      --htmldir=$(privlib)/html   \
      --htmlroot=$(privlib)/html  \
      --splithead=pod/perlipc     \

Cross/Makefile.SH.patch  view on Meta::CPAN

 INSTALL_DEPENDENCE = all
 
 install.perl:	$(INSTALL_DEPENDENCE) installperl
-	if [ -n "$(COMPILE)" ]; \
-	then \
-		cd utils; $(MAKE) compile; \
-		cd ../x2p; $(MAKE) compile; \
-		cd ../pod; $(MAKE) compile; \
-	else :; \
-	fi
-	$(LDLIBPTH) ./perl installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
-	$(MAKE) extras.install
-
-install.man:	all installman
-	$(LDLIBPTH) ./perl installman --destdir=$(DESTDIR) $(INSTALLFLAGS)
+	/usr/bin/perl -Ifake_config_library -MConfig installperl $(INSTALLFLAGS) $(STRIPFLAGS)
 
 # XXX Experimental. Hardwired values, but useful for testing.
 # Eventually Configure could ask for some of these values.
@@ -950,16 +940,16 @@
 #
 # DynaLoader may be needed for extensions that use Makefile.PL.
 
-$(DYNALOADER):	miniperl$(EXE_EXT) preplibrary FORCE
+$(DYNALOADER):	preplibrary FORCE

Cross/README.new  view on Meta::CPAN

# vim: syntax=pod

You're reading ./Cross/README.new, describing Perl cross-compilation process.
NOTE: this file will replace ./Cross/README, after the cross-compilation scheme
is stabilized.

=head1 NAME

README.new - Cross-compilation for linux

=head1 DESCRIPTION

This is second approach to linux cross-compilation, which should allow
building full perl and extensions for target platform.

We refer to HOST as the platform where the build is performed, and to
TARGET as where final executables will run.

=head2 Basic ideas

=head3 common

INSTALL  view on Meta::CPAN

the documentation in F<pod/perlgit.pod> for information on that special
circumstance.

If you have problems, corrections, or questions, please see
L<"Reporting Problems"> below.

For information on what's new in this release, see the
F<pod/perldelta.pod> file.  For more information about how to find more
specific detail about changes, see the Changes file.

=head1 DESCRIPTION

This document is written in pod format as an easy way to indicate its
structure.  The pod format is described in F<pod/perlpod.pod>, but you can
read it as is with any pager or editor.  Headings and items are marked
by lines beginning with '='.  The other mark-up used is

    B<text>     embolden text, used for switches, programs or commands
    C<code>	literal code
    L<name>     A link (cross reference) to name
    F<file>     A filename

MANIFEST  view on Meta::CPAN

t/op/readline.t				See if <> / readline / rcatline work
t/op/recurse.t				See if deep recursion works
t/op/ref.t				See if refs and objects work
t/op/repeat.t				See if x operator works
t/op/require_37033.t			See if require always closes rsfp
t/op/require_errors.t			See if errors from require are reported correctly
t/op/require_gh20577.t			Make sure updating %INC from an INC hook doesnt break @INC
t/op/require_override.t			See if require handles no argument properly
t/op/reset.t				See if reset operator works
t/op/reverse.t				See if reverse operator works
t/op/rt119311.t				Test bug #119311 (die/DESTROY/recursion)
t/op/runlevel.t				See if die() works from perl_call_*()
t/op/select.t				See if 0- and 1-argument select works
t/op/setpgrpstack.t			See if setpgrp works
t/op/sigdispatch.t			See if signals are always dispatched
t/op/signame_canonical.t		See if duplicate signal names always use the canonical name when the handler is invoked.
t/op/signatures.t			See if sub signatures work
t/op/sigsystem.t			See if system and SIGCHLD handlers play together nicely
t/op/sleep.t				See if sleep works
t/op/smartkve.t				See if smart deref for keys/values/each works
t/op/smartmatch.t			See if the ~~ operator works

Makefile.SH  view on Meta::CPAN

install: install-all
!NO!SUBS!

for name in all notify silent strip verbose; do
    flags="--$name";
    flags=`echo $flags | sed -e 's/--all//'`
    if test "X$hostperl" != X; then
        $spitshell >>$Makefile <<EOT

install_$name install-$name: \$(INSTALL_DEPENDENCE) installperl all installman
	\$(HOST_PERL) installperl --destdir=\$(DESTDIR) $flags \$(INSTALLFLAGS) \$(STRIPFLAGS)
	\$(HOST_PERL) installman --destdir=\$(DESTDIR) $flags
EOT
    else
        $spitshell >>$Makefile <<EOT

install_$name install-$name: \$(INSTALL_DEPENDENCE) installperl all installman
	\$(RUN_PERL) installperl --destdir=\$(DESTDIR) $flags \$(INSTALLFLAGS) \$(STRIPFLAGS)
	\$(RUN_PERL) installman --destdir=\$(DESTDIR) $flags
EOT
    fi

    test $name = notify || echo '	-@test ! -s extras.lst || PATH="`pwd`:${PATH}" PERL5LIB="`pwd`/lib" $(RUN_PERL) -Ilib -MCPAN -e '\''@ARGV&&install(@ARGV)'\'' `cat extras.lst`' >>$Makefile
done

if test "X$hostperl" != X; then
	LOCAL_PERL='$(HOST_PERL)'
	$spitshell >>$Makefile <<'!NO!SUBS!'
install.perl:	$(INSTALL_DEPENDENCE) installperl
	$(HOST_PERL) installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
	-@test ! -s extras.lst || $(MAKE) extras.install
!NO!SUBS!
else
	LOCAL_PERL='$(RUN_PERL)'
	$spitshell >>$Makefile <<'!NO!SUBS!'
install.perl:	$(INSTALL_DEPENDENCE) installperl
	$(RUN_PERL) installperl --destdir=$(DESTDIR) $(INSTALLFLAGS) $(STRIPFLAGS)
	-@test ! -s extras.lst || PATH="`pwd`:\${PATH}" PERL5LIB="`pwd`/lib" \$(RUN_PERL) -Ilib -MCPAN -e '@ARGV&&install(@ARGV)' `cat extras.lst`

!NO!SUBS!
fi

$spitshell >>$Makefile <<!GROK!THIS!
install.man:	all installman
	${LOCAL_PERL} installman --destdir=\$(DESTDIR) \$(INSTALLFLAGS)

# XXX Experimental. Hardwired values, but useful for testing.
# Eventually Configure could ask for some of these values.
install.html: all installhtml
	-@test -f README.vms && cd vms && \$(LNS) ../README.vms README_vms.pod && cd ..
	${LOCAL_PERL} installhtml   \\
      --podroot=. --podpath=. --recurse  \\
      --htmldir=\$(privlib)/html   \\
      --splithead=pod/perlipc     \\
      --splititem=pod/perlfunc    \\

Porting/acknowledgements.pl  view on Meta::CPAN

#!perl

=head1 NAME

Porting/acknowledgements.pl - Generate perldelta acknowledgements text

=head1 SYNOPSIS

  perl Porting/acknowledgements.pl v5.15.0..HEAD

=head1 DESCRIPTION

This generates the text which goes in the Acknowledgements section in
a perldelta. You pass in the previous version and it guesses the next
version, fetches information from the repository and outputs the
text.

=cut

use strict;
use warnings;

Porting/add-pod-file  view on Meta::CPAN

add-pod-file - Utility to add new F<pod/*.pod> file to core distribution

=head1 USAGE

After C<make test_prep> has been run, call from top level of Perl 5 core
distribution:

   perl Porting/add-pod-file \
       --stub=<XXX> --section=<Z> --verbose

=head1 DESCRIPTION

This is a program which I<may> be helpful when a committer has to add a new
F<*.pod> file in the F<pod/> directory.

=head2 Prerequisites

This program assumes that committer has taken the following steps (in the
order listed):

=over 4

Porting/bench.pl  view on Meta::CPAN

    # binary, and benchmark again, comparing against the saved results

    bench.pl [options] --write=blead.time ./perl=blead
    # ... hack hack hack, updating ./perl ...
    bench.pl --read=blead.time ./perl=hacked

    # You can also combine --read with --write and new benchmark runs

    bench.pl --read=blead.time --write=last.time -- ./perl=hacked

=head1 DESCRIPTION

By default, F<bench.pl> will run code snippets found in
F<t/perf/benchmarks> (or similar) under cachegrind, in order to calculate
how many instruction reads, data writes, branches, cache misses, etc. that
one execution of the snippet uses. Usually it will run them against two or
more perl executables and show how much each test has gotten better or
worse.

It is modelled on the F<perlbench> tool, but since it measures instruction
reads etc., rather than timings, it is much more precise and reproducible.

Porting/bisect-runner.pl  view on Meta::CPAN

 .../Porting/bisect.pl --test-build -Dd_dosuid
 # When did this test program start generating errors from valgrind?
 .../Porting/bisect.pl --valgrind ../test_prog.pl
 # When did these cpan modules start failing to compile/pass tests?
 .../Porting/bisect.pl --module=autobox,Moose
 # When did this code stop working in blead with these modules?
 .../Porting/bisect.pl --with-module=Moose,Moo -e 'use Moose; 1;'
 # Like the above 2 but with custom CPAN::MyConfig
 .../Porting/bisect.pl --module=Moo --cpan-config-dir=/home/blah/custom/

=head1 DESCRIPTION

Together F<bisect.pl> and F<bisect-runner.pl> attempt to automate the use
of C<git bisect> as much as possible. With one command (and no other files)
it's easy to find out

=over 4

=item *

Which commit caused this example code to break?

Porting/checkansi.pl  view on Meta::CPAN

=head1 NAME

checkansi.pl - Check source code for ANSI-C violations

=head1 SYNOPSIS

checkansi.pl [B<--std>=c90|c99]
[B<--logical-source-line-length>=I<num>]
<path> ...

=head1 DESCRIPTION

B<checkansi.pl> searches 

=head1 OPTIONS

=over 4

=item B<--std>=c90|c99

Choose the ANSI/ISO standard against which shall be checked.

Porting/config.sh  view on Meta::CPAN

cp='cp'
cpio=''
cpp='cpp'
cpp_stuff='42'
cppccsymbols=''
cppflags='-D_REENTRANT -D_GNU_SOURCE -pie -fPIE -fPIC -DDEBUGGING -fwrapv -fno-strict-aliasing -pipe -fstack-protector-strong -I/pro/local/include'
cpplast='-'
cppminus='-'
cpprun='cc  -E'
cppstdin='cc  -E'
cppsymbols='__amd64=1 __amd64__=1 __ATOMIC_ACQ_REL=4 __ATOMIC_ACQUIRE=2 __ATOMIC_CONSUME=1 __ATOMIC_HLE_ACQUIRE=65536 __ATOMIC_HLE_RELEASE=131072 __ATOMIC_RELAXED=0 __ATOMIC_RELEASE=3 __ATOMIC_SEQ_CST=5 __BFLT16_DECIMAL_DIG__=4 __BFLT16_DENORM_MIN__=...
crypt_r_proto='REENTRANT_PROTO_B_CCS'
cryptlib=''
csh='tcsh'
ctermid_r_proto='0'
ctime_r_proto='REENTRANT_PROTO_B_SB'
d_Gconvert='sprintf((b),"%.*g",(n),(x))'
d_PRIEUldbl='define'
d_PRIFUldbl='define'
d_PRIGUldbl='define'
d_PRIXU64='define'

Porting/config_H  view on Meta::CPAN

 *	available to transform a wide character string for wcscmp().
 */
#define HAS_WCSXFRM	/**/

/* HAS_WRITEV:
 *	This symbol, if defined, indicates that the writev routine is
 *	available to do scatter writes.
 */
#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.
 */
#define USE_DYNAMIC_LOADING		/**/

/* FFLUSH_NULL:
 *	This symbol, if defined, tells that fflush(NULL) correctly
 *	flushes all pending stdio output without side effects. In

Porting/epigraphs.pod  view on Meta::CPAN

=encoding utf8

=head1 NAME

perlepigraphs - list of Perl release epigraphs

=head1 DESCRIPTION

Many Perl release announcements included an I<epigraph>, a short excerpt
from a literary or other creative work, chosen by the pumpking or release
manager.  This file assembles the known list of epigraph for posterity,
and also links to the release announcements in mailing list archives.

I<Note>: these have also been referred to as I<epigrams>, but the
definition of I<epigraph> is closer to the way they have been used.
Consult your favorite dictionary for details.

Porting/how_to_write_a_perldelta.pod  view on Meta::CPAN

more appropriate section is created.

=over

=item NAME

Follows this formula:

    perl5104delta - what is new for perl v5.10.4

=item DESCRIPTION

For a release on a stable branch, follows this formula:

    This document describes differences between the 5.10.3 release
    and the 5.10.4 release.

For the start of a new stable branch, follows this formula:

    This document describes differences between the 5.10.0 release
    and the 5.12.0 release.

Porting/manifest_lib.pl  view on Meta::CPAN

use Text::Tabs qw(expand unexpand);

=head1 NAME

Porting/manifest_lib.pl - functions for managing manifests

=head1 SYNOPSIS

    require './Porting/manifest_lib.pl';

=head1 DESCRIPTION

This file makes available one function, C<sort_manifest()>.

=head2 C<sort_manifest>

Treats its arguments as (chomped) lines from a MANIFEST file, and returns that
listed sorted appropriately.

=cut

Porting/perldelta_template.pod  view on Meta::CPAN

=encoding utf8

=head1 NAME

[ this is a template for a new perldelta file.  Any text flagged as XXX needs
to be processed before release. ]

perldelta - what is new for perl v5.tXXX.cXXX

=head1 DESCRIPTION

This document describes differences between the 5.sXXX.bXXX release and the 5.tXXX.cXXX
release.

If you are upgrading from an earlier release such as 5.rXXX.aXXX, first read
L<perl5XXXdelta>, which describes differences between 5.rXXX.aXXX and 5.sXXX.bXXX.

=head1 Notice

XXX Any important notices here

Porting/pod_lib.pl  view on Meta::CPAN

=head1 NAME

Porting/pod_lib.pl - functions for building and installing POD

=head1 SYNOPSIS

    require './Porting/pod_lib.pl';

=cut

=head1 DESCRIPTION

This program, when C<require>d into other programs in the Perl 5 core
distribution, provides functions useful during building and, secondarily,
testing.

As of this writing, the functions in this program are used in these other
programs:

    installman
    installperl

Porting/pumpkin.pod  view on Meta::CPAN

=head1 NAME

Pumpkin - Notes on handling the Perl Patch Pumpkin And Porting Perl

=head1 SYNOPSIS

There is no simple synopsis, yet.

=head1 DESCRIPTION

This document attempts to begin to describe some of the considerations
involved in patching, porting, and maintaining perl.

This document is still under construction, and still subject to
significant changes.  Still, I hope parts of it will be useful,
so I'm releasing it even though it's not done.

For the most part, it's a collection of anecdotal information that
already assumes some familiarity with the Perl sources.  I really need

Porting/security_template.pod  view on Meta::CPAN

Look for FIXME to see what needs to be filled in.

=end editor

=encoding utf8

=head1 NAME

FIXME - short description of the security issue, with an identifier of the issue as the manpage name

=head1 DESCRIPTION

=for editor
Ideally, FIXME here should be the CVE-ID as a link to cve.mitre.org

This document describes the
L<FIXME|http://cve.mitre.org/cgi-bin/cvename.cgi?name=FIXME>
security vulnerability for perl 5.

=head2 Are there any known exploits "in the wild" for this vulnerability

Porting/sort_perldiag.pl  view on Meta::CPAN

=pod

=head1 NAME

sort_perldiag.pl - Sort warning and error messages in perldiag.pod

=head1 SYNOPSIS

B<sort_perldiag.pl> I<file>

=head1 DESCRIPTION

B<sort_perldiag.pl> is a script for sorting the warning and error
messages in F<perldiag.pod>.  POD formatting, printf-style escapes,
non-letter characters, and case are ignored, as explained in L<perldiag>.

=cut

Porting/sync-with-cpan  view on Meta::CPAN

Porting/sync-with-cpan - Synchronize with CPAN distributions

=head1 SYNOPSIS

    sh ./Configure
    perl Porting/sync-with-cpan <module>

where C<module> is the name it appears in the C<%Modules> hash
of F<Porting/Maintainers.pl>

=head1 DESCRIPTION

Script to help out with syncing cpan distros.

Does the following:

=over 4

=item *

Fetches the package list from CPAN. Finds the current version of the given

Porting/test-dist-modules.pl  view on Meta::CPAN


/* Added in 5.11.x */
#ifndef G_WANT
#  define G_WANT                (128|1)
#endif

/* Added in 5.24.x */
#ifndef PERL_TSA_RELEASE
#  define PERL_TSA_RELEASE(x)
#endif
#ifndef PERL_TSA_EXCLUDES
#  define PERL_TSA_EXCLUDES(x)
#endif
#ifndef CLANG_DIAG_IGNORE
#  define CLANG_DIAG_IGNORE(x)
#endif
#ifndef CLANG_DIAG_RESTORE
#  define CLANG_DIAG_RESTORE
#endif

/* Added in 5.38 */
#ifndef PERL_SRAND_OVERRIDE_NEXT_PARENT

Porting/todo.pod  view on Meta::CPAN

=head1 NAME

todo - Perl TO-DO list

=head1 DESCRIPTION

This is a list of wishes for Perl. The most up to date version of this file
is at L<https://github.com/Perl/perl5/blob/blead/Porting/todo.pod>.

The tasks we think are smaller or easier are listed first. Anyone is welcome
to work on any of these, but it's a good idea to first contact
I<perl5-porters@perl.org> to avoid duplication of effort, and to learn from
any previous attempts. By all means contact the Steering Council privately
first if you prefer.

Porting/updateAUTHORS.pl  view on Meta::CPAN

    --change-name-for-email somebody@gmail.com="Bob Rob"

would cause the preferred name for the person with the preferred email
C<somebody@gmail.com> to change to "Bob Rob" in our records. If that
persons name was "Daniel Dude" then we might have done this as well:

    --change-name "Bob Rob"="Daniel Dude"

=back

=head1 DESCRIPTION

This program will automatically manage updates to the F<AUTHORS> file
and F<.mailmap> file based on the data in our commits and the data in
the files themselves. It uses no other sources of data. Expects to be
run from the root directory of a git repo of perl.

In simple, execute the script and it will either die with a helpful
message or it will update the files as necessary, possibly not at all
if there is no need to do so. If the C<--validate> option is provided
the content will not be updated and instead the tool will act as a

Porting/updateAUTHORS.pm  view on Meta::CPAN


    use Porting::updateAUTHORS;

    my $updater= Porting::updateAUTHORS->new(
        authors_file => "AUTHORS",
        mailmap_file => ".mailmap",
        exclude_file => "Porting/exclude_contrib.txt",
    );
    $updater->read_and_update();

=head1 DESCRIPTION

This the brain of the F<Porting/updateAUTHORS.pl> script. It is expected
to be used B<from> that script and B<by> that script. Most features and
options are documented in the F<Porting/updateAUTHORS.pl> and are not
explicitly documented here, read the F<Porting/updateAUTHORS.pl> manpage
for more details.

=head1 METHODS

Porting::updateAUTHORS uses OO as way of managing its internal state.

Porting/valgrindpp.pl  view on Meta::CPAN


valgrindpp.pl - A post processor for make test.valgrind

=head1 SYNOPSIS

valgrindpp.pl [B<--dir>=I<dir>] [B<--frames>=I<number>]
[B<--hide>=I<identifier>] [B<--lines>]
[B<--output-file>=I<file>] [B<--tests>] 
[B<--top>=I<number>] [B<--verbose>]

=head1 DESCRIPTION

B<valgrindpp.pl> is a post processor for I<.valgrind> files
created during I<make test.valgrind>. It collects all these
files, extracts most of the information and produces a
significantly shorter summary of all detected memory access
errors and memory leaks.

=head1 OPTIONS

=over 4

README.aix  view on Meta::CPAN

# vim: syntax=pod

If you read this file _as_is_, just ignore the funny characters you see.
It is written in the POD format (see pod/perlpod.pod) which is specially
designed to be readable as is.

=head1 NAME

perlaix - Perl version 5 on IBM AIX (UNIX) systems

=head1 DESCRIPTION

This document describes various features of IBM's UNIX operating
system AIX that will affect how Perl version 5 (hereafter just Perl)
is compiled and/or runs.

=head2 Compiling Perl 5 on AIX

For information on compilers on older versions of AIX, see L</Compiling
Perl 5 on older AIX versions up to 4.3.3>.

 view all matches for this distribution
 view release on metacpan -  search on metacpan

( run in 1.466 second using v1.00-cache-2.02-grep-82fe00e-cpan-dad7e4baca0 )