head	1.4;
access;
symbols
	file-4_20:1.4
	rpm-4_4_8-release:1.2.2.1
	rpm-4_4_7-release:1.2.2.1
	rpm-4_4_6-release:1.2.2.1
	rpm-4_4_5-release:1.2.2.1
	rpm-4_4_4-release:1.2.2.1
	rpm-4_4_3-release:1.2.2.1
	file-4_16:1.3
	jbj_before_tklcpatches:1.2.2.1
	rpm-4_4_2-release:1.2.2.1
	file-4_14:1.3
	pjones-sparse-experiment:1.2.0.4
	rpm-4_4_1-release:1.2
	file-4_12:1.2
	rpm-4_4-release:1.2
	rpm-4_4:1.2.0.2
	file-4_10:1.2
	file-4_09:1.2
	rpm-file-before:1.1
	rpm42-file-before:1.1
	rpm43-file-before:1.1
	rpm-4_3_1-start:1.1
	rpm-4_3:1.1.0.4
	rpm-4_2:1.1.0.2;
locks; strict;
comment	@# @;


1.4
date	2007.05.09.19.38.34;	author jbj;	state Exp;
branches;
next	1.3;

1.3
date	2005.07.16.21.06.33;	author jbj;	state Exp;
branches;
next	1.2;

1.2
date	2004.08.03.20.16.18;	author jbj;	state Exp;
branches
	1.2.2.1;
next	1.1;

1.1
date	2003.04.15.16.58.35;	author jbj;	state Exp;
branches
	1.1.2.1
	1.1.4.1;
next	;

1.2.2.1
date	2005.07.17.14.55.57;	author jbj;	state Exp;
branches;
next	1.2.2.2;

1.2.2.2
date	2007.05.10.17.39.22;	author jbj;	state Exp;
branches;
next	;

1.1.2.1
date	2003.12.01.21.20.02;	author jbj;	state Exp;
branches;
next	;

1.1.4.1
date	2004.12.07.00.57.38;	author jbj;	state Exp;
branches;
next	;


desc
@@


1.4
log
@Virgin file-4.20.
@
text
@#------------------------------------------------------------
# Mach has two magic numbers, 0xcafebabe and 0xfeedface.
# Unfortunately the first, cafebabe, is shared with
# Java ByteCode, so they are both handled in the file "cafebabe".
# The "feedface" ones are handled herein.
#------------------------------------------------------------
0	lelong&0xfeffffff	0xfeedface	Mach-O
>0	byte		0xcf		64-bit
>12	lelong		1		object
>12	lelong		2		executable
>12	lelong		3		fixed virtual memory shared library
>12	lelong		4		core
>12	lelong		5		preload executable
>12	lelong		6		dynamically linked shared library
>12	lelong		7		dynamic linker
>12	lelong		8		bundle
>12	lelong		9		dynamically linked shared library stub
>12	lelong		>9
>>12	lelong		x		filetype=%ld
>4	lelong		<0
>>4	lelong		x		architecture=%ld
>4	lelong		1		vax
>4	lelong		2		romp
>4	lelong		3		architecture=3
>4	lelong		4		ns32032
>4	lelong		5		ns32332
>4	lelong		6		m68k
>4	lelong		7		i386
>4	lelong		8		mips
>4	lelong		9		ns32532
>4	lelong		10		architecture=10
>4	lelong		11		hppa
>4	lelong		12		acorn
>4	lelong		13		m88k
>4	lelong		14		sparc
>4	lelong		15		i860-big
>4	lelong		16		i860
>4	lelong		17		rs6000
>4	lelong		18		ppc
>4	lelong		16777234	ppc64
>4	lelong		>16777234
>>4	lelong		x		architecture=%ld
#
0	belong&0xfffffffe	0xfeedface	Mach-O
>3	byte		0xcf		64-bit
>12	belong		1		object
>12	belong		2		executable
>12	belong		3		fixed virtual memory shared library
>12	belong		4		core
>12	belong		5		preload executable
>12	belong		6               dynamically linked shared library
>12	belong		7               dynamic linker
>12	belong		8		bundle
>12	belong		9		dynamically linked shared library stub
>12	belong		>9
>>12	belong		x		filetype=%ld
>4	belong		<0
>>4	belong		x		architecture=%ld
>4	belong		1		vax
>4	belong		2		romp
>4	belong		3		architecture=3
>4	belong		4		ns32032
>4	belong		5		ns32332
>4	belong		6		for m68k architecture
# from NeXTstep 3.0 <mach/machine.h>
# i.e. mc680x0_all, ignore
# >>8	belong		1		(mc68030)
>>8	belong		2		(mc68040)
>>8	belong		3		(mc68030 only)
>4	belong		7		i386
>4	belong		8		mips
>4	belong		9		ns32532
>4	belong		10		architecture=10
>4	belong		11		hppa
>4	belong		12		acorn
>4	belong		13		m88k
>4	belong		14		sparc
>4	belong		15		i860-big
>4	belong		16		i860
>4	belong		17		rs6000
>4	belong		18		ppc
>4	belong		16777234	ppc64
>4	belong		>16777234
>>4	belong		x		architecture=%ld
@


1.3
log
@Update to virgin file-4.14.
@
text
@d1 6
a6 23
#------------------------------------------------------------------------------
# mach file description
#
# Since Java bytecode and Mach-O fat-files have the same magic number the test
# must be preformed in the same "magic" sequence to get both right.  The long
# at offset 4 in a fat file tells the number of architectures.  The short at
# offset 4 in a Java bytecode file is the compiler minor version and the
# short at offset 6 is the compiler major version.  Since there are only 
# only 18 labeled Mach-O architectures at current, and the first released 
# Java class format was version 43.0, we can safely choose any number
# between 18 and 39 to test the number of architectures against
# (and use as a hack).
#
0	belong		0xcafebabe
>4	belong		>19		compiled Java class data,
>>6     beshort		x	        version %d.
>>4     beshort		x       	\b%d
>4	belong		1		Mach-O fat file with 1 architecture
>4	belong		>1
# The following is necessary to support java class files.
>>4	belong		<20		Mach-O fat file with %ld architectures
#>>4	belong		<0xffff		Mach-O fat file with %ld architectures
#
@


1.2
log
@Upgrade to file-4.09.
@
text
@d4 15
a18 2
0	belong		0xcafebabe	Mach-O fat file
>4	belong		1		with 1 architecture
d20 40
a59 1
>>4	belong		x		with %ld architectures		
d61 2
a62 1
0	belong		0xfeedface	Mach-O
d65 1
a65 1
>12	belong		3		shared library
d71 2
a72 1
>12	belong		>8
d91 1
a91 1
>4	belong		11		hp pa-risc
d99 2
a100 1
>4	belong		>18
@


1.2.2.1
log
@- upgrade to file-4.14 internal.
@
text
@d4 2
a5 15
# Since Java bytecode and Mach-O fat-files have the same magic number the test
# must be preformed in the same "magic" sequence to get both right.  The long
# at offset 4 in a fat file tells the number of architectures.  The short at
# offset 4 in a Java bytecode file is the compiler minor version and the
# short at offset 6 is the compiler major version.  Since there are only 
# only 18 labeled Mach-O architectures at current, and the first released 
# Java class format was version 43.0, we can safely choose any number
# between 18 and 39 to test the number of architectures against
# (and use as a hack).
#
0	belong		0xcafebabe
>4	belong		>19		compiled Java class data,
>>6     beshort		x	        version %d.
>>4     beshort		x       	\b%d
>4	belong		1		Mach-O fat file with 1 architecture
d7 1
a7 40
# The following is necessary to support java class files.
>>4	belong		<20		Mach-O fat file with %ld architectures
#>>4	belong		<0xffff		Mach-O fat file with %ld architectures
#
0	lelong&0xfeffffff	0xfeedface	Mach-O
>0	byte		0xcf		64-bit
>12	lelong		1		object
>12	lelong		2		executable
>12	lelong		3		fixed virtual memory shared library
>12	lelong		4		core
>12	lelong		5		preload executable
>12	lelong		6		dynamically linked shared library
>12	lelong		7		dynamic linker
>12	lelong		8		bundle
>12	lelong		9		dynamically linked shared library stub
>12	lelong		>9
>>12	lelong		x		filetype=%ld
>4	lelong		<0
>>4	lelong		x		architecture=%ld
>4	lelong		1		vax
>4	lelong		2		romp
>4	lelong		3		architecture=3
>4	lelong		4		ns32032
>4	lelong		5		ns32332
>4	lelong		6		m68k
>4	lelong		7		i386
>4	lelong		8		mips
>4	lelong		9		ns32532
>4	lelong		10		architecture=10
>4	lelong		11		hppa
>4	lelong		12		acorn
>4	lelong		13		m88k
>4	lelong		14		sparc
>4	lelong		15		i860-big
>4	lelong		16		i860
>4	lelong		17		rs6000
>4	lelong		18		ppc
>4	lelong		16777234	ppc64
>4	lelong		>16777234
>>4	lelong		x		architecture=%ld
d9 1
a9 2
0	belong&0xfffffffe	0xfeedface	Mach-O
>3	byte		0xcf		64-bit
d12 1
a12 1
>12	belong		3		fixed virtual memory shared library
d18 1
a18 2
>12	belong		9		dynamically linked shared library stub
>12	belong		>9
d37 1
a37 1
>4	belong		11		hppa
d45 1
a45 2
>4	belong		16777234	ppc64
>4	belong		>16777234
@


1.2.2.2
log
@Upgrade to file-4.20 internal.
@
text
@d1 23
a23 6
#------------------------------------------------------------
# Mach has two magic numbers, 0xcafebabe and 0xfeedface.
# Unfortunately the first, cafebabe, is shared with
# Java ByteCode, so they are both handled in the file "cafebabe".
# The "feedface" ones are handled herein.
#------------------------------------------------------------
@


1.1
log
@Move magic creation to sub-directory.
@
text
@d15 4
a18 1
>12	belong		>5
d44 1
a44 1
>4	belong		18		powerPC
@


1.1.4.1
log
@- port to internal file-4.10 libmagic rather than libfmagic.
@
text
@d15 1
a15 4
>12	belong		6               dynamically linked shared library
>12	belong		7               dynamic linker
>12	belong		8		bundle
>12	belong		>8
d41 1
a41 1
>4	belong		18		ppc
@


1.1.2.1
log
@Merge from top-of-stack.
@
text
@@

