]>
Commit | Line | Data |
---|---|---|
1c79356b A |
1 | #!/bin/sh |
2 | ||
3 | if [ ! $OBJROOT ] | |
4 | then | |
5 | echo "OBJROOT not defined" | |
6 | exit 1 | |
7 | fi | |
8 | ||
9 | if [ ! $PREBUILT_OBJROOT ] | |
10 | then | |
11 | PREBUILT_OBJROOT=/Prebuilt/$1/xnu/BUILD/obj | |
12 | fi | |
13 | ||
14 | if [ ! -e $PREBUILT_OBJROOT ] | |
15 | then | |
16 | echo "$PREBUILT_OBJROOT doesn't exist" | |
17 | exit 1 | |
18 | else | |
19 | if [ $# = 2 -a ! -e $PREBUILT_OBJROOT/$2 ] | |
20 | then | |
21 | echo "$PREBUILT_OBJROOT/$2 doesn't exist" | |
22 | exit 1 | |
23 | fi | |
24 | if [ -e $PREBUILT_OBJROOT/BUILDING_SEED_OBJROOT ] | |
25 | then | |
26 | echo "Building $PREBUILT_OBJROOT, try later" | |
27 | exit 1 | |
28 | fi | |
29 | fi | |
30 | ||
31 | cd $PREBUILT_OBJROOT | |
32 | ||
33 | if [ $# = 1 ] | |
34 | then | |
35 | ||
36 | if [ ! -e $OBJROOT ] | |
37 | then | |
38 | mkdir -p $OBJROOT | |
39 | echo "Copying $PREBUILT_OBJROOT in $OBJROOT" | |
40 | pax -rw . $OBJROOT | |
41 | else | |
42 | echo "Remove $OBJROOT before calling seed_objroot" | |
43 | exit 1 | |
44 | fi | |
45 | ||
46 | else | |
47 | ||
48 | if [ ! -e $OBJROOT/$2 ] | |
49 | then | |
50 | mkdir -p $OBJROOT/$2 | |
51 | echo "Copying $PREBUILT_OBJROOT/$2 in $OBJROOT/$2" | |
52 | pax -rw $2 $OBJROOT | |
53 | RELEASE_OBJ=`echo $2 | sed 's/DEBUG/RELEASE/'` | |
54 | if [ $1 != $RELEASE_OBJ -a ! -e $OBJROOT/$RELEASE_OBJ ] | |
55 | then | |
56 | mkdir -p $OBJROOT/$RELEASE_OBJ | |
57 | echo "Copying $PREBUILT_OBJROOT/$RELEASE_OBJ in $OBJROOT/$RELEASE_OBJ" | |
58 | pax -rw $RELEASE_OBJ $OBJROOT | |
59 | fi | |
60 | ||
61 | else | |
62 | echo "remove $OBJROOT/$2 before calling seed_objroot" | |
63 | exit 1 | |
64 | fi | |
65 | ||
66 | fi | |
67 | ||
68 | if [ ! -e $OBJROOT/EXPORT_HDRS ] | |
69 | then | |
70 | echo "Copying $PREBUILT_OBJROOT/EXPORT_HDRS in $OBJROOT/EXPORT_HDRS" | |
71 | mkdir -p $OBJROOT/EXPORT_HDRS | |
72 | pax -rw EXPORT_HDRS $OBJROOT | |
73 | fi | |
74 | ||
75 | cd $OBJROOT | |
76 | if [ -e RELEASE_PPC/osfmk/RELEASE/config.RELEASE_PPC ] | |
77 | then | |
78 | PREV_OBJROOT=`grep objectdir RELEASE_PPC/osfmk/RELEASE/config.RELEASE_PPC | cut -f 2 -d\" | | |
79 | sed 's|/RELEASE_PPC/osfmk/RELEASE||'` | |
80 | fi | |
81 | if [ -z $PREV_OBJROOT -a -e DEBUG_PPC/osfmk/DEBUG/config.DEBUG_PPC ] | |
82 | then | |
83 | PREV_OBJROOT=`grep objectdir DEBUG_PPC/osfmk/DEBUG/config.DEBUG_PPC | cut -f 2 -d\" | | |
84 | sed 's|/DEBUG_PPC/osfmk/DEBUG||'` | |
85 | fi | |
86 | if [ -z $PREV_OBJROOT -a -e RELEASE_I386/osfmk/RELEASE/config.RELEASE_I386 ] | |
87 | then | |
88 | PREV_OBJROOT=`grep objectdir RELEASE_I386/osfmk/RELEASE/config.RELEASE_I386 | cut -f 2 -d\" | | |
89 | sed 's|/RELEASE_I386/osfmk/RELEASE||'` | |
90 | fi | |
91 | if [ -z $PREV_OBJROOT -a -e DEBUG_I386/osfmk/DEBUG/config.DEBUG_I386 ] | |
92 | then | |
93 | PREV_OBJROOT=`grep objectdir DEBUG_I386/osfmk/DEBUG/config.DEBUG_I386 | cut -f 2 -d\" | | |
94 | sed 's|/DEBUG_I386/osfmk/DEBUG||'` | |
95 | fi | |
96 | if [ -z $PREV_OBJROOT ] | |
97 | then | |
98 | echo "PREV_OBJROOT not found" | |
99 | exit 1 | |
100 | fi | |
101 | ||
102 | if [ -e RELEASE_PPC/osfmk/RELEASE/config.RELEASE_PPC ] | |
103 | then | |
104 | PREV_SRCROOT=`grep sourcedir RELEASE_PPC/osfmk/RELEASE/config.RELEASE_PPC | cut -f 2 -d\"` | |
105 | fi | |
106 | if [ -z $PREV_SRCROOT -a -e DEBUG_PPC/osfmk/DEBUG/config.DEBUG_PPC ] | |
107 | then | |
108 | PREV_SRCROOT=`grep sourcedir DEBUG_PPC/osfmk/DEBUG/config.DEBUG_PPC | cut -f 2 -d\"` | |
109 | fi | |
110 | if [ -z $PREV_SRCROOT -a -e RELEASE_I386/osfmk/RELEASE/config.RELEASE_I386 ] | |
111 | then | |
112 | PREV_SRCROOT=`grep sourcedir RELEASE_I386/osfmk/RELEASE/config.RELEASE_I386 | cut -f 2 -d\"` | |
113 | fi | |
114 | if [ -z $PREV_SRCROOT -a -e DEBUG_I386/osfmk/DEBUG/config.DEBUG_I386 ] | |
115 | then | |
116 | PREV_SRCROOT=`grep sourcedir DEBUG_I386/osfmk/DEBUG/config.DEBUG_I386 | cut -f 2 -d\"` | |
117 | fi | |
118 | if [ -z $PREV_SRCROOT ] | |
119 | then | |
120 | echo "PREV_SRCROOT not found" | |
121 | exit 1 | |
122 | fi | |
123 | ||
124 | echo "s|$PREV_OBJROOT|$OBJROOT|" > prebuild.sed | |
125 | echo "s|$PREV_SRCROOT|$SRCROOT|" >>prebuild.sed | |
126 | ||
127 | for i in `find . -name Makedep -print` | |
128 | do | |
129 | sed -f prebuild.sed $i > $i.tmp | |
130 | rm $i | |
131 | mv $i.tmp $i | |
132 | done | |
133 | rm -f `find $OBJROOT -name Makefile -print` prebuild.sed |