FreeBSD/TinderBox/6.2 Jail on 7.X+ host

From TomJudge.com
Jump to: navigation, search

Assuming your tinderbox base is /data/tinderbox.

Place the following patches in /data/tinderbox/patches:


File contents from SVN: as.h.diff
--- src/contrib/binutils/gas/as.h	2004/06/16 05:45:16	1.1.1.8
+++ src/contrib/binutils/gas/as.h	2007/11/16 04:29:01	1.1.1.8.8.1
@@ -1,6 +1,6 @@
 /* as.h - global header file
    Copyright 1987, 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998,
-   1999, 2000, 2001, 2002, 2003
+   1999, 2000, 2001, 2002, 2003, 2004, 2005
    Free Software Foundation, Inc.
 
    This file is part of GAS, the GNU Assembler.
@@ -397,6 +397,22 @@ typedef unsigned int relax_substateT;
 /* Enough bits for address, but still an integer type.
    Could be a problem, cross-assembling for 64-bit machines.  */
 typedef addressT relax_addressT;
+
+struct relax_type
+{
+  /* Forward reach. Signed number. > 0.  */
+  offsetT rlx_forward;
+  /* Backward reach. Signed number. < 0.  */
+  offsetT rlx_backward;
+
+  /* Bytes length of this address.  */
+  unsigned char rlx_length;
+
+  /* Next longer relax-state.  0 means there is no 'next' relax-state.  */
+  relax_substateT rlx_more;
+};
+
+typedef struct relax_type relax_typeS;
 
 /* main program "as.c" (command arguments etc) */
File contents from SVN: tc.h.diff
--- src/contrib/binutils/gas/tc.h	2004/06/16 05:45:10	1.1.1.5
+++ src/contrib/binutils/gas/tc.h	2007/11/16 04:29:01	1.1.1.5.8.1
@@ -24,25 +24,6 @@
 
 extern const pseudo_typeS md_pseudo_table[];
 
-/* JF moved this here from as.h under the theory that nobody except MACHINE.c
-   and write.c care about it anyway.  */
-
-struct relax_type
-{
-  /* Forward reach. Signed number. > 0.  */
-  long rlx_forward;
-  /* Backward reach. Signed number. < 0.  */
-  long rlx_backward;
-
-  /* Bytes length of this address.  */
-  unsigned char rlx_length;
-
-  /* Next longer relax-state.  0 means there is no 'next' relax-state.  */
-  relax_substateT rlx_more;
-};
-
-typedef struct relax_type relax_typeS;
-
 extern const int md_reloc_size;	/* Size of a relocation record */
 
 char *md_atof (int what_statement_type, char *literalP, int *sizeP);


Then place the following in /data/tinderbox/scripts/

File contents from SVN: patch62.sh
#!/bin/sh
if [ ${JAIL} = "6.2" ]; then
    cd ${SRCBASE}
    patch -p1 < /data/tinderbox/patches/as.h.diff
    patch -p1 < /data/tinderbox/patches/tc.h.diff
fi
exit 0


Then execute the following:

cd /data/tinderbox/scripts
./tc updateHookCmd -h preJailBuild -c /data/tinderbox/scripts/patch62.sh


Your 6.2 jail should now build.

Personal tools