head	1.4;
access;
symbols
	RELENG_8_4:1.4.0.2
	RELENG_9_1_0_RELEASE:1.3.10.1
	RELENG_9_1:1.3.10.1.0.2
	RELENG_9_1_BP:1.3.10.1
	RELENG_8_3_0_RELEASE:1.3
	RELENG_8_3:1.3.0.14
	RELENG_8_3_BP:1.3
	RELENG_9_0_0_RELEASE:1.3
	RELENG_9_0:1.3.0.12
	RELENG_9_0_BP:1.3
	RELENG_9:1.3.0.10
	RELENG_9_BP:1.3
	RELENG_7_4_0_RELEASE:1.1.1.5
	RELENG_8_2_0_RELEASE:1.3
	RELENG_7_4:1.1.1.5.0.12
	RELENG_7_4_BP:1.1.1.5
	RELENG_8_2:1.3.0.8
	RELENG_8_2_BP:1.3
	RELENG_8_1_0_RELEASE:1.3
	RELENG_8_1:1.3.0.6
	RELENG_8_1_BP:1.3
	RELENG_7_3_0_RELEASE:1.1.1.5
	RELENG_7_3:1.1.1.5.0.10
	RELENG_7_3_BP:1.1.1.5
	RELENG_8_0_0_RELEASE:1.3
	RELENG_8_0:1.3.0.4
	RELENG_8_0_BP:1.3
	RELENG_8:1.3.0.2
	RELENG_8_BP:1.3
	RELENG_7_2_0_RELEASE:1.1.1.5
	RELENG_7_2:1.1.1.5.0.8
	RELENG_7_2_BP:1.1.1.5
	RELENG_7_1_0_RELEASE:1.1.1.5
	RELENG_6_4_0_RELEASE:1.1.1.3.2.1
	RELENG_7_1:1.1.1.5.0.6
	RELENG_7_1_BP:1.1.1.5
	RELENG_6_4:1.1.1.3.2.1.0.2
	RELENG_6_4_BP:1.1.1.3.2.1
	RELENG_7_0_0_RELEASE:1.1.1.5
	file_4_23__r1_46:1.1.1.5
	RELENG_6_3_0_RELEASE:1.1.1.3
	file_4_23:1.1.1.5
	RELENG_7_0:1.1.1.5.0.4
	RELENG_7_0_BP:1.1.1.5
	RELENG_6_3:1.1.1.3.0.10
	RELENG_6_3_BP:1.1.1.3
	RELENG_7:1.1.1.5.0.2
	RELENG_7_BP:1.1.1.5
	file_4_21:1.1.1.5
	file_4_19:1.1.1.4
	RELENG_6_2_0_RELEASE:1.1.1.3
	RELENG_6_2:1.1.1.3.0.8
	RELENG_6_2_BP:1.1.1.3
	file_4_17_A:1.1
	file_4_17:1.1.1.4
	RELENG_5_5_0_RELEASE:1.1.1.2
	RELENG_5_5:1.1.1.2.0.8
	RELENG_5_5_BP:1.1.1.2
	RELENG_6_1_0_RELEASE:1.1.1.3
	RELENG_6_1:1.1.1.3.0.6
	RELENG_6_1_BP:1.1.1.3
	RELENG_6_0_0_RELEASE:1.1.1.3
	RELENG_6_0:1.1.1.3.0.4
	RELENG_6_0_BP:1.1.1.3
	RELENG_6:1.1.1.3.0.2
	RELENG_6_BP:1.1.1.3
	RELENG_5_4_0_RELEASE:1.1.1.2
	RELENG_5_4:1.1.1.2.0.6
	RELENG_5_4_BP:1.1.1.2
	RELENG_4_11_0_RELEASE:1.1.1.1.4.1
	file_4_12:1.1.1.3
	RELENG_4_11:1.1.1.1.4.1.0.8
	RELENG_4_11_BP:1.1.1.1.4.1
	RELENG_5_3_0_RELEASE:1.1.1.2
	RELENG_5_3:1.1.1.2.0.4
	RELENG_5_3_BP:1.1.1.2
	RELENG_5:1.1.1.2.0.2
	RELENG_5_BP:1.1.1.2
	file_4_10:1.1.1.2
	RELENG_4_10_0_RELEASE:1.1.1.1.4.1
	RELENG_4_10:1.1.1.1.4.1.0.6
	RELENG_4_10_BP:1.1.1.1.4.1
	RELENG_5_2_1_RELEASE:1.1.1.1
	RELENG_5_2_0_RELEASE:1.1.1.1
	RELENG_5_2:1.1.1.1.0.8
	RELENG_5_2_BP:1.1.1.1
	RELENG_4_9_0_RELEASE:1.1.1.1.4.1
	RELENG_4_9:1.1.1.1.4.1.0.4
	RELENG_4_9_BP:1.1.1.1.4.1
	RELENG_5_1_0_RELEASE:1.1.1.1
	RELENG_5_1:1.1.1.1.0.6
	RELENG_5_1_BP:1.1.1.1
	RELENG_4_8_0_RELEASE:1.1.1.1.4.1
	RELENG_4_8:1.1.1.1.4.1.0.2
	RELENG_4_8_BP:1.1.1.1.4.1
	RELENG_4:1.1.1.1.0.4
	file_3_41:1.1.1.1
	file_3_40:1.1.1.1
	RELENG_5_0_0_RELEASE:1.1.1.1
	RELENG_5_0:1.1.1.1.0.2
	RELENG_5_0_BP:1.1.1.1
	file_3_39:1.1.1.1
	ZOULAS:1.1.1;
locks; strict;
comment	@# @;


1.4
date	2012.04.19.03.20.13;	author obrien;	state Exp;
branches
	1.4.2.1;
next	1.3;

1.3
date	2009.05.04.00.37.44;	author obrien;	state Exp;
branches
	1.3.10.1;
next	1.2;

1.2
date	2009.01.02.03.10.55;	author obrien;	state Exp;
branches;
next	1.1;

1.1
date	2002.09.16.05.54.26;	author obrien;	state Exp;
branches
	1.1.1.1;
next	;

1.4.2.1
date	2012.04.19.03.20.13;	author svnexp;	state dead;
branches;
next	1.4.2.2;

1.4.2.2
date	2013.03.28.13.00.45;	author svnexp;	state Exp;
branches;
next	;

1.3.10.1
date	2012.07.02.08.48.58;	author obrien;	state Exp;
branches;
next	;

1.1.1.1
date	2002.09.16.05.54.26;	author obrien;	state Exp;
branches
	1.1.1.1.4.1;
next	1.1.1.2;

1.1.1.2
date	2004.08.09.08.45.41;	author obrien;	state Exp;
branches;
next	1.1.1.3;

1.1.1.3
date	2004.12.28.04.31.46;	author obrien;	state Exp;
branches
	1.1.1.3.2.1;
next	1.1.1.4;

1.1.1.4
date	2006.06.19.07.52.15;	author obrien;	state Exp;
branches;
next	1.1.1.5;

1.1.1.5
date	2007.05.24.21.59.37;	author obrien;	state Exp;
branches;
next	;

1.1.1.1.4.1
date	2003.03.16.04.44.56;	author obrien;	state Exp;
branches;
next	;

1.1.1.3.2.1
date	2008.01.24.15.47.31;	author rafan;	state Exp;
branches;
next	;


desc
@@


1.4
log
@SVN rev 234449 on 2012-04-19 03:20:13Z by obrien

Update file(1) to version 5.11.
@
text
@#------------------------------------------------------------------------------
# $File: perl,v 1.17 2011/12/16 16:24:40 rrt Exp $
# perl:  file(1) magic for Larry Wall's perl language.
#
# The `eval' lines recognizes an outrageously clever hack.
# Keith Waclena <keith@@cerberus.uchicago.edu>
# Send additions to <perl5-porters@@perl.org>
0	search/1/w	#!\ /bin/perl			Perl script text executable
!:mime	text/x-perl
0	search/1	eval\ "exec\ /bin/perl		Perl script text
!:mime	text/x-perl
0	search/1/w	#!\ /usr/bin/perl		Perl script text executable
!:mime	text/x-perl
0	search/1	eval\ "exec\ /usr/bin/perl	Perl script text
!:mime	text/x-perl
0	search/1/w	#!\ /usr/local/bin/perl		Perl script text executable
!:mime	text/x-perl
0	search/1	eval\ "exec\ /usr/local/bin/perl	Perl script text
!:mime	text/x-perl
0	search/1	eval\ '(exit\ $?0)'\ &&\ eval\ 'exec	Perl script text
!:mime	text/x-perl
0	search/1	#!/usr/bin/env\ perl	Perl script text executable
!:mime	text/x-perl
0	search/1	#!\ /usr/bin/env\ perl	Perl script text executable
!:mime	text/x-perl

# by Dmitry V. Levin and Alexey Tourbin
# check the first line
0	search/1	package
>0	regex		\^package[\ \t]+[0-9A-Za-z_:]+\ *;	Perl5 module source text
# not 'p', check other lines
0	search/1	!p
>0	regex		\^package[\ \t]+[0-9A-Za-z_:]+\ *;
>>0	regex		\^1\ *;|\^(use|sub|my)\ .*[(;{=]	Perl5 module source text



# Perl POD documents
# From: Tom Hukins <tom@@eborcom.com>
0	search/1/W	\=pod\n		Perl POD document text
0	search/1/W	\n\=pod\n	Perl POD document text
0	search/1/W	\=head1\ 	Perl POD document text
0	search/1/W	\n\=head1\ 	Perl POD document text
0	search/1/W	\=head2\ 	Perl POD document text
0	search/1/W	\n\=head2\ 	Perl POD document text

# Perl Storable data files.
0	string	perl-store	perl Storable (v0.6) data
>4	byte	>0	(net-order %d)
>>4	byte	&01	(network-ordered)
>>4	byte	=3	(major 1)
>>4	byte	=2	(major 1)

0	string	pst0	perl Storable (v0.7) data
>4	byte	>0
>>4	byte	&01	(network-ordered)
>>4	byte	=5	(major 2)
>>4	byte	=4	(major 2)
>>5	byte	>0	(minor %d)
@


1.4.2.1
log
@file perl was added on branch RELENG_8_4 on 2013-03-28 13:00:45 +0000
@
text
@d1 59
@


1.4.2.2
log
@## SVN ## Exported commit - http://svnweb.freebsd.org/changeset/base/248810
## SVN ## CVS IS DEPRECATED: http://wiki.freebsd.org/CvsIsDeprecated
@
text
@a0 55
#------------------------------------------------------------------------------
# perl:  file(1) magic for Larry Wall's perl language.
#
# The `eval' lines recognizes an outrageously clever hack.
# Keith Waclena <keith@@cerberus.uchicago.edu>
# Send additions to <perl5-porters@@perl.org>
0	search/1/b	#!\ /bin/perl			Perl script text executable
!:mime	text/x-perl
0	search/1	eval\ "exec\ /bin/perl		Perl script text
!:mime	text/x-perl
0	search/1/b	#!\ /usr/bin/perl		Perl script text executable
!:mime	text/x-perl
0	search/1	eval\ "exec\ /usr/bin/perl	Perl script text
!:mime	text/x-perl
0	search/1/b	#!\ /usr/local/bin/perl		Perl script text executable
!:mime	text/x-perl
0	search/1	eval\ "exec\ /usr/local/bin/perl	Perl script text
!:mime	text/x-perl
0	search/1	eval\ '(exit\ $?0)'\ &&\ eval\ 'exec	Perl script text
!:mime	text/x-perl


# by Dmitry V. Levin and Alexey Tourbin
# check the first line
0	search/1	package
>0	regex		\^package[\ \t]+[0-9A-Za-z_:]+\ *;	Perl5 module source text
# not 'p', check other lines
0	search/1	!p
>0	regex		\^package[\ \t]+[0-9A-Za-z_:]+\ *;
>>0	regex		\^1\ *;|\^(use|sub|my)\ .*[(;{=]	Perl5 module source text



# Perl POD documents
# From: Tom Hukins <tom@@eborcom.com>
0	search/1/B	\=pod\n		Perl POD document text
0	search/1/B	\n\=pod\n	Perl POD document text
0	search/1/B	\=head1\ 	Perl POD document text
0	search/1/B	\n\=head1\ 	Perl POD document text
0	search/1/B	\=head2\ 	Perl POD document text
0	search/1/B	\n\=head2\ 	Perl POD document text

# Perl Storable data files.
0	string	perl-store	perl Storable (v0.6) data
>4	byte	>0	(net-order %d)
>>4	byte	&01	(network-ordered)
>>4	byte	=3	(major 1)
>>4	byte	=2	(major 1)

0	string	pst0	perl Storable (v0.7) data
>4	byte	>0
>>4	byte	&01	(network-ordered)
>>4	byte	=5	(major 2)
>>4	byte	=4	(major 2)
>>5	byte	>0	(minor %d)
@


1.3
log
@SVN rev 191771 on 2009-05-04 00:37:44Z by obrien

Merge vendor/file/dist@@191739, bringing FILE 5.00 to 8-CURRENT.
@
text
@d2 1
d8 1
a8 1
0	search/1/b	#!\ /bin/perl			Perl script text executable
d12 1
a12 1
0	search/1/b	#!\ /usr/bin/perl		Perl script text executable
d16 1
a16 1
0	search/1/b	#!\ /usr/local/bin/perl		Perl script text executable
d22 4
a25 1

d40 6
a45 6
0	search/1/B	\=pod\n		Perl POD document text
0	search/1/B	\n\=pod\n	Perl POD document text
0	search/1/B	\=head1\ 	Perl POD document text
0	search/1/B	\n\=head1\ 	Perl POD document text
0	search/1/B	\=head2\ 	Perl POD document text
0	search/1/B	\n\=head2\ 	Perl POD document text
@


1.3.10.1
log
@SVN rev 237983 on 2012-07-02 08:48:58Z by obrien

MFC: r234449: update file(1) to version 5.11.
@
text
@a1 1
# $File: perl,v 1.17 2011/12/16 16:24:40 rrt Exp $
d7 1
a7 1
0	search/1/w	#!\ /bin/perl			Perl script text executable
d11 1
a11 1
0	search/1/w	#!\ /usr/bin/perl		Perl script text executable
d15 1
a15 1
0	search/1/w	#!\ /usr/local/bin/perl		Perl script text executable
d21 1
a21 4
0	search/1	#!/usr/bin/env\ perl	Perl script text executable
!:mime	text/x-perl
0	search/1	#!\ /usr/bin/env\ perl	Perl script text executable
!:mime	text/x-perl
d36 6
a41 6
0	search/1/W	\=pod\n		Perl POD document text
0	search/1/W	\n\=pod\n	Perl POD document text
0	search/1/W	\=head1\ 	Perl POD document text
0	search/1/W	\n\=head1\ 	Perl POD document text
0	search/1/W	\=head2\ 	Perl POD document text
0	search/1/W	\n\=head2\ 	Perl POD document text
@


1.2
log
@SVN rev 186691 on 2009-01-02 03:10:55Z by obrien

Record that base/vendor/file/dist@@186675 was merged.
Merge base/vendor/file/dist@@186675@@186690, bringing FILE 4.26 to 8-CURRENT.
@
text
@a25 1
0	regex		\^package[\ \t]+[A-Za-z_]
@


1.1
log
@Initial revision
@
text
@a0 1

d4 1
a4 1
# The ``eval'' line recognizes an outrageously clever hack for USG systems.
d7 50
a56 11
0	string/b	#!\ /bin/perl			perl script text executable
0	string		eval\ "exec\ /bin/perl		perl script text
0	string/b	#!\ /usr/bin/perl		perl script text executable
0	string		eval\ "exec\ /usr/bin/perl	perl script text
0	string/b	#!\ /usr/local/bin/perl		perl script text
0	string		eval\ "exec\ /usr/local/bin/perl	perl script text executable

# a couple more, by me
# XXX: christos matches
#0	regex		package		Perl5 module source text (via regex)
0	string		package		Perl5 module source text
@


1.1.1.1
log
@Virgin import of Christos Zoulas's FILE 3.39.
@
text
@@


1.1.1.2
log
@Virgin import of Christos Zoulas's FILE 4.10.
*- file is now broken into a library containing and processing the magic
   and a consumer binary.
@
text
@a13 1
0	string		eval\ '(exit\ $?0)'\ &&\ eval\ 'exec	perl script text
@


1.1.1.3
log
@Virgin import of Christos Zoulas's FILE 4.12.
@
text
@a19 14

# Perl Storable data files.
0	string	perl-store	perl Storable(v0.6) data
>4	byte	>0	(net-order %d)
>>4	byte	&01	(network-ordered)
>>4	byte	=3	(major 1)
>>4	byte	=2	(major 1)

0	string	pst0	perl Storable(v0.7) data
>4	byte	>0
>>4	byte	&01	(network-ordered)
>>4	byte	=5	(major 2)
>>4	byte	=4	(major 2)
>>5	byte	>0	(minor %d)
@


1.1.1.3.2.1
log
@MFC file 4.21
@
text
@d16 4
a19 21

# by Dmitry V. Levin and Alexey Tourbin
# check the first line
0	string		package
>1	regex		\^package[\ \t]+[A-Za-z_]
>>1	regex		\^package[\ \t]+[0-9A-Za-z_:]*\ *;	Perl5 module source text
# not 'p', check other lines
0	byte		!0x70
>0	regex		\^package[\ \t]+[0-9A-Za-z_:]+\ *;
>>0	regex		\^1\ *;|\^(use|sub|my)\ .*[(;{=]	Perl5 module source text



# Perl POD documents
# From: Tom Hukins <tom@@eborcom.com>
0	string/B	\=pod\n		Perl POD document
0	string/B	\n\=pod\n	Perl POD document
0	string/B	\=head1\ 	Perl POD document
0	string/B	\n\=head1\ 	Perl POD document
0	string/B	\=head2\ 	Perl POD document
0	string/B	\n\=head2\ 	Perl POD document
@


1.1.1.4
log
@Virgin import of Christos Zoulas's FILE 4.17.
@
text
@a20 9
# Perl POD documents
# From: Tom Hukins <tom@@eborcom.com>
0	string/B	\=pod\n		Perl POD document
0	string/B	\n\=pod\n	Perl POD document
0	string/B	\=head1\ 	Perl POD document
0	string/B	\n\=head1\ 	Perl POD document
0	string/B	\=head2\ 	Perl POD document
0	string/B	\n\=head2\ 	Perl POD document

@


1.1.1.5
log
@Virgin import of Christos Zoulas's FILE 4.21.
@
text
@d16 4
a19 12

# by Dmitry V. Levin and Alexey Tourbin
# check the first line
0	string		package
>1	regex		\^package[\ \t]+[A-Za-z_]
>>1	regex		\^package[\ \t]+[0-9A-Za-z_:]*\ *;	Perl5 module source text
# not 'p', check other lines
0	byte		!0x70
>0	regex		\^package[\ \t]+[0-9A-Za-z_:]+\ *;
>>0	regex		\^1\ *;|\^(use|sub|my)\ .*[(;{=]	Perl5 module source text


@


1.1.1.1.4.1
log
@MFC: file version 3.41

Approved by:	murray(re)
Desired by:		nectar(so)
@
text
@@

