Browse code

GCC sec options: - added -pic flag + startfiles for linker. - adjust-gcc-specs.sh cleanup. Minor improvements: - use minimal toolchain archive. - package builder doesn't use host /tools anymore. - fix createrepo build problem. - added make -jN for some pkgs. - patched open-vm-tools to build with -pie. - removed 'expect' and 'dejagnu' pkgs from toolchain archive.

YustasSwamp authored on 2015/05/14 02:42:25
Showing 16 changed files
... ...
@@ -32,7 +32,7 @@ iso: check $(PHOTON_PACKAGES) $(PHOTON_TOOLCHAIN_MINIMAL)
32 32
                         -f > \
33 33
         $(PHOTON_LOGS_DIR)/installer.log 2>&1
34 34
 
35
-packages: check $(PHOTON_TOOLCHAIN) $(PHOTON_SOURCES)
35
+packages: check $(PHOTON_TOOLCHAIN_MINIMAL) $(PHOTON_SOURCES)
36 36
 	@echo "Building all RPMS..."
37 37
 	@cd $(PHOTON_PKG_BUILDER_DIR) && \
38 38
     $(PHOTON_PACKAGE_BUILDER) -a \
... ...
@@ -43,7 +43,7 @@ packages: check $(PHOTON_TOOLCHAIN) $(PHOTON_SOURCES)
43 43
                               -p $(PHOTON_STAGE) \
44 44
                               -l $(PHOTON_LOGS_DIR)
45 45
 
46
-packages-cached: check $(PHOTON_TOOLCHAIN)
46
+packages-cached: check $(PHOTON_TOOLCHAIN_MINIMAL)
47 47
 	@echo "Using cached RPMS..."
48 48
 	@$(RM) -f $(PHOTON_RPMS_DIR_NOARCH)/* && \
49 49
      $(RM) -f $(PHOTON_RPMS_DIR_X86_64)/* && \
... ...
@@ -17,7 +17,7 @@ Requires: bash
17 17
 Requires: deltarpm
18 18
 BuildRequires: bash
19 19
 BuildRequires: deltarpm
20
-BuildRequires: yum-metadata-parser, yum, python2, rpm-devel, rpm, libxml2, python2, python2-libs
20
+BuildRequires: yum-metadata-parser, yum, rpm-devel, rpm, libxml2, python2, python2-libs
21 21
 %description
22 22
 This utility will generate a common metadata repository from a directory of
23 23
 rpm packages
... ...
@@ -99,7 +99,7 @@ for libelf.
99 99
 
100 100
 %build
101 101
 %configure --program-prefix=%{_programprefix}
102
-make
102
+make %{?_smp_mflags}
103 103
 
104 104
 %install
105 105
 rm -rf ${RPM_BUILD_ROOT}
... ...
@@ -44,7 +44,7 @@ install -vdm 755 %{buildroot}/var/{opt,cache,lib/{color,misc,locate},local}
44 44
 #	6.6. Creating Essential Files and Symlinks
45 45
 #
46 46
 ln -sv /proc/self/mounts %{buildroot}/etc/mtab
47
-touch %{buildroot}/etc/mtab
47
+#touch -f %{buildroot}/etc/mtab
48 48
 touch %{buildroot}/var/log/{btmp,lastlog,wtmp}
49 49
 #
50 50
 #	Configuration files
... ...
@@ -96,7 +96,6 @@ systemd-timesync:x:78:
96 96
 nogroup:x:99:
97 97
 users:x:999:
98 98
 EOF
99
-touch %{buildroot}/etc/mtab
100 99
 #
101 100
 #	7.2.2. Creating Network Interface Configuration Files"
102 101
 #
... ...
@@ -35,6 +35,7 @@ Header files for doing development with Network Security Services.
35 35
 %patch -p1
36 36
 %build
37 37
 cd nss
38
+# -j is not supported by nss
38 39
 make VERBOSE=1 BUILD_OPT=1 \
39 40
 	NSPR_INCLUDE_DIR=%{_includedir}/nspr \
40 41
 	USE_SYSTEM_ZLIB=1 \
41 42
new file mode 100644
... ...
@@ -0,0 +1,11 @@
0
+--- open-vm-tools-9.10.0/vgauth/service/Makefile.in	2015-03-19 11:11:07.000000000 -0700
1
+@@ -322,7 +322,7 @@
2
+ 	../lib/libvgauth.la @XERCES_LIBS@ @XMLSECURITY_LIBS@ \
3
+ 	@SSL_LIBS@ -lxerces-c -lxml-security-c -lssl -lcrypto \
4
+ 	$(am__append_1)
5
+-@HAVE_ICU_FALSE@VGAuthService_LINK = $(LINK)
6
++@HAVE_ICU_FALSE@VGAuthService_LINK = $(CXXLINK)
7
+ @HAVE_ICU_TRUE@VGAuthService_LINK = $(LIBTOOL) --tag=CXX $(AM_LIBTOOLFLAGS)     \
8
+ @HAVE_ICU_TRUE@                            $(LIBTOOLFLAGS) --mode=link $(CXX)       \
9
+ @HAVE_ICU_TRUE@                            $(AM_CXXFLAGS) $(CXXFLAGS) $(AM_LDFLAGS) \
... ...
@@ -9,6 +9,7 @@ Vendor:		VMware, Inc.
9 9
 Distribution:	Photon
10 10
 Source0:	http://downloads.sourceforge.net/project/open-vm-tools/open-vm-tools/stable-9.10.0/%{name}-%{version}.tar.gz
11 11
 Patch0:		open-vm-tools-glibc-fixes.patch
12
+Patch1:		open-vm-tools-service-link.patch
12 13
 BuildRequires: 	glib-devel
13 14
 BuildRequires: 	xerces-c-devel
14 15
 BuildRequires: 	xml-security-c-devel
... ...
@@ -28,6 +29,7 @@ VmWare virtualization user mode tools
28 28
 %prep
29 29
 %setup -q
30 30
 %patch0 -p1
31
+%patch1 -p1
31 32
 %build
32 33
 export CFLAGS="$RPM_OPT_FLAGS -Wno-unused-local-typedefs -Wno-deprecated-declarations -D_DEFAULT_SOURCE"
33 34
 export CXXFLAGS="$RPM_OPT_FLAGS -Wno-unused-local-typedefs -Wno-deprecated-declarations -D_DEFAULT_SOURCE"
... ...
@@ -35,6 +35,7 @@ export CFLAGS="%{optflags}"
35 35
 	shared \
36 36
 	zlib-dynamic \
37 37
 	-Wa,--noexecstack "${CFLAGS}" "${LDFLAGS}"
38
+# does not support -j yet
38 39
 make
39 40
 %install
40 41
 [ %{buildroot} != "/"] && rm -rf %{buildroot}/*
... ...
@@ -17,6 +17,7 @@ BuildRequires:  	pycurl
17 17
 BuildRequires:		python2
18 18
 BuildRequires:		python2-libs
19 19
 Requires:		python2
20
+Requires:		curl
20 21
 
21 22
 %description
22 23
 A high-level cross-protocol url-grabber for python supporting HTTP, FTP 
... ...
@@ -1,23 +1,27 @@
1 1
 #! /bin/bash
2 2
 
3
-if [ $# -eq 1 -a $1 = "clean" ]; then
4
-    rm -f `dirname $(/usr/bin/gcc --print-libgcc-file-name)`/specs
3
+if [ $# -eq 1 -a "x$1" = "xclean" ]; then
4
+    rm -f `dirname $(gcc --print-libgcc-file-name)`/../specs
5 5
     exit 0
6 6
 fi
7 7
 
8
-cat <<EOF > `dirname $(/usr/bin/gcc --print-libgcc-file-name)`/specs
8
+cat <<EOF > `dirname $(gcc --print-libgcc-file-name)`/../specs
9 9
 *cc1:
10
-+ %{!fno-stack-protector:-fstack-protector} %{fno-pie|fno-PIE|fpic|fPIC|shared:;:-fPIE} 
10
++ %{!fno-stack-protector:-fstack-protector} %{fno-pie|fno-PIE|fpic|fPIC|shared:;:-fPIE -fpie}
11 11
 
12 12
 *cc1plus:
13
-+ %{!fno-stack-protector:-fstack-protector} %{fno-pie|fno-PIE|fpic|fPIC|shared:;:-fPIE} 
13
++ %{!fno-stack-protector:-fstack-protector} %{fno-pie|fno-PIE|fpic|fPIC|shared:;:-fPIE -fpie}
14 14
 
15 15
 *cpp:
16 16
 + %{O1|O2|O3|Os|Ofast:-D_FORTIFY_SOURCE=2}
17 17
 
18 18
 *link:
19
-+ %{!norelro:-z relro} %{!nonow:-z now}
19
++ %{r|fno-pie|fno-PIE|fpic|fPIC|fno-pic|fno-PIC|shared:;:-pie} %{!norelro:-z relro} %{!nonow:-z now}
20 20
 
21 21
 *libgcc:
22 22
 + -lgcc_s
23
+
24
+*startfile:
25
+%{!mandroid|tno-android-ld:%{!shared: %{pg|p|profile:gcrt1.o%s;:Scrt1.o%s}}    crti.o%s %{static:crtbeginT.o%s;:crtbeginS.o%s};:%{shared: crtbegin_so%O%s;:  %{static: crtbegin_static%O%s;: crtbegin_dynamic%O%s}}}
26
+
23 27
 EOF
... ...
@@ -166,11 +166,11 @@ class BuildSystem(object):
166 166
             "libpipeline", "gdbm","perl","texinfo","rpm",
167 167
             "autoconf","automake", "groff", "man-db", "man-pages","elfutils","cpio"]
168 168
 
169
-        self.list_nodeps_packages = ["glibc","gmp","gcc","ncurses","util-linux","groff","perl","texinfo","rpm","openssl","go"]
169
+        self.list_nodeps_packages = ["glibc","gmp","zlib","file","binutils","mpfr","mpc","gcc","ncurses","util-linux","groff","perl","texinfo","rpm","openssl","go"]
170 170
         self.readPackagesInSpecFiles()
171 171
 
172
-    def prepare_build_root(self):
173
-        process = subprocess.Popen([self.prepare_buildroot_command, self.build_root,  self.spec_path,  self.rpm_path, self.tools_path])
172
+    def prepare_build_root(self, tools_archive=""):
173
+        process = subprocess.Popen([self.prepare_buildroot_command, self.build_root,  self.spec_path,  self.rpm_path, self.tools_path, tools_archive])
174 174
         returnVal = process.wait()
175 175
         if returnVal != 0:
176 176
             return False
... ...
@@ -192,16 +192,15 @@ class BuildSystem(object):
192 192
         returnVal = cmdUtils.run_command("/tmp/"+self.adjust_tool_chain_script,"/var/log/adjust_tool_chain_script.log", self.run_in_chroot_command+" "+self.build_root)
193 193
         return returnVal
194 194
 
195
-    def adjust_gcc_specs(self):
196
-        shutil.copy2(self.adjust_gcc_specs_script,  self.build_root+"/tmp/"+self.adjust_gcc_specs_script)
197
-        cmdUtils=commandsUtils()
198
-        returnVal = cmdUtils.run_command("/tmp/"+self.adjust_gcc_specs_script,"/var/log/adjust_gcc_specs_script.log", self.run_in_chroot_command+" "+self.build_root)
199
-        return returnVal
195
+    def adjust_gcc_specs(self, package):
196
+        opt = ""
197
+        # linux package does not require sec gcc options
198
+        if package == "linux" or package == "glibc":
199
+            opt = " clean"
200 200
 
201
-    def clean_gcc_specs(self):
202 201
         shutil.copy2(self.adjust_gcc_specs_script,  self.build_root+"/tmp/"+self.adjust_gcc_specs_script)
203 202
         cmdUtils=commandsUtils()
204
-        returnVal = cmdUtils.run_command("/tmp/"+self.adjust_gcc_specs_script+" clean","/var/log/adjust_gcc_specs_script.log", self.run_in_chroot_command+" "+self.build_root)
203
+        returnVal = cmdUtils.run_command("/tmp/"+self.adjust_gcc_specs_script+opt,"/var/log/adjust_gcc_specs_script.log", self.run_in_chroot_command+" "+self.build_root)
205 204
         return returnVal
206 205
 
207 206
     def readPackagesInSpecFiles(self):
... ...
@@ -276,6 +275,8 @@ class BuildSystem(object):
276 276
         if specFile is None:
277 277
             print "Did not find spec file for package: ", package
278 278
             return False
279
+        self.adjust_gcc_specs(package)
280
+
279 281
         specName=os.path.basename(specFile)
280 282
         spec=Specutils(specFile)
281 283
         listSourceFiles=[]
... ...
@@ -341,10 +342,6 @@ class BuildSystem(object):
341 341
             print "Installing " + rpmFile+" rpm is failed"
342 342
             return False
343 343
         self.listInstalledPackages.append(package)
344
-        if package =="glibc":
345
-            self.adjust_tool_chain()
346
-        if package =="gcc":
347
-            self.adjust_gcc_specs()
348 344
         return True
349 345
 
350 346
     def findInstalledPackages(self):
... ...
@@ -371,6 +368,8 @@ class BuildSystem(object):
371 371
             if not returnVal:
372 372
                 print "Stopping building toolchain"
373 373
                 return False
374
+            if package =="glibc":
375
+                self.adjust_tool_chain()
374 376
         print "Built toolchain succesfully"
375 377
         return True
376 378
 
... ...
@@ -388,7 +387,7 @@ class BuildSystem(object):
388 388
                 return False
389 389
 
390 390
         self.cleanBuildRoot()
391
-        self.prepare_build_root()
391
+        self.prepare_build_root("minimal")
392 392
         for package in self.listPkgsToInstallToolChain:
393 393
             returnVal=self.installRPM(package)
394 394
             if not returnVal:
... ...
@@ -466,7 +465,6 @@ class BuildSystem(object):
466 466
     def removeToolsTar(self):
467 467
         cmdUtils=commandsUtils()
468 468
         cmdUtils.run_command("rm -rf "+self.build_root+"/tools")
469
-        cmdUtils.run_command("rm -rf /tools")
470 469
         return True
471 470
 
472 471
     def cleanBuildRoot(self):
... ...
@@ -505,7 +503,7 @@ class BuildSystem(object):
505 505
         if rpmfile is not None:
506 506
             return True
507 507
 
508
-	# Let's build this package
508
+        # Let's build this package
509 509
         self.installToolchain()
510 510
         self.removeToolsTar()
511 511
         del self.listInstalledPackages[:]
... ...
@@ -532,10 +530,6 @@ class BuildSystem(object):
532 532
                 print "Installed the package:",pkg
533 533
             print "Finished installing the dependent packages......"
534 534
 
535
-	# linux package does not require sec gcc options
536
-        if package =="linux":
537
-            self.clean_gcc_specs()
538
-
539 535
         returnVal=self.buildPackage(package)
540 536
         if not returnVal:
541 537
             print "Stop installing the package",package
... ...
@@ -575,6 +569,7 @@ class BuildSystem(object):
575 575
             print "Some of the packages failed during clean build. Logs are locates in ", self.build_root_log_path," path."
576 576
             print "List failed Packages",listFailedPkgs
577 577
             return False
578
+        self.cleanBuildRoot()
578 579
         print "Successfully built all packages"
579 580
         return True
580 581
     
... ...
@@ -32,7 +32,7 @@ run_command() {
32 32
 		eval ${_cmd} >> ${_logfile} 2>&1 && print_succeeded_in_green || print_failed_in_red
33 33
 	else
34 34
 		print_message "${_msg}: "
35
-		printf "\n%s\n\n" "###       ${_msg}       ###" >> ${_logfile} 2>&1
35
+		printf "\n%s\ncmd: %s\n\n" "###       ${_msg}       ###" "${_cmd}" >> ${_logfile} 2>&1
36 36
 		eval ${_cmd} >> ${_logfile} 2>&1 && print_succeeded_in_green || print_failed_in_red
37 37
 		fi
38 38
 	return 0
... ...
@@ -23,9 +23,9 @@ BUILDROOT=$1
23 23
 SPEC_PATH=$2
24 24
 RPM_PATH=$3
25 25
 TOOLS_PATH=$4
26
+TOOLS_ARCHIVE=$5
26 27
 PARENT=/usr/src/photon
27 28
 rm -rf ${BUILDROOT}/*
28
-rm -rf /tools
29 29
 
30 30
 #LOGFILE=/dev/null		#	uncomment to disable log file
31 31
 [ ${EUID} -eq 0 ] 	|| fail "${PRGNAME}: Need to be root user: FAILURE"
... ...
@@ -47,15 +47,17 @@ if mountpoint ${BUILDROOT}/dev	>/dev/null 2>&1; then umount ${BUILDROOT}/dev; fi
47 47
 #Untar tools build to buildroot
48 48
 #
49 49
 
50
-echo "Uncompressing the tools tar"
51
-
52
-tar -C ${BUILDROOT} -xvf $TOOLS_PATH/tools-build.tar >/dev/null
53
-# YUSTAS_FIXME: rpm still depends on /tools/lib/... Remove this dependency.
54
-ln -sf ${BUILDROOT}/tools /tools
50
+if [ "x$TOOLS_ARCHIVE" = "xminimal" ] ; then
51
+    echo "Uncompressing the tools tar (minimal)"
52
+    tar -C ${BUILDROOT} -xzf $TOOLS_PATH/tools.tar.gz >/dev/null
53
+else
54
+    echo "Uncompressing the tools tar"
55
+    tar -C ${BUILDROOT} -xf $TOOLS_PATH/tools-build.tar >/dev/null
56
+fi
55 57
 
56 58
 mkdir -p ${BUILDROOT}/tmp
57 59
 mkdir -p ${BUILDROOT}${PARENT}
58
-mkdir -p ${BUILDROOT}${PARENT}/RPMS
60
+mkdir -p ${BUILDROOT}${PARENT}/RPMS/x86_64
59 61
 mkdir -p ${BUILDROOT}${PARENT}/BUILD
60 62
 mkdir -p ${BUILDROOT}${PARENT}/BUILDROOT
61 63
 mkdir -p ${BUILDROOT}${PARENT}/LOGS
... ...
@@ -77,21 +79,24 @@ echo "%_smp_mflags -j${NUMPROCS}" >> ${BUILDROOT}/tools/etc/rpm/macros
77 77
 #	Setup the filesystem for chapter 06
78 78
 RPMPKG="$(find $RPM_PATH -name 'filesystem*.rpm' -print)"
79 79
 if [ -z ${RPMPKG} ] ; then
80
-run_command "Building filesystem rpm" "${BUILDROOT}/tools/bin/rpmbuild -ba --nocheck --define \"_topdir ${BUILDROOT}/${PARENT}\" --define \"_dbpath ${BUILDROOT}/var/lib/rpm\" ${SPEC_PATH}/filesystem/filesystem.spec" "$LOG_PATH/filesystem.log"
81
-run_command "Extracting filesystem rpm" "cp ${BUILDROOT}/${PARENT}/RPMS/x86_64/filesystem*.rpm ${RPM_PATH}/x86_64/" "$LOG_PATH/filesystem.log"
80
+run_command "	Extracting filesystem spec" "cp ${SPEC_PATH}/filesystem/filesystem.spec ${BUILDROOT}/${PARENT}/SPECS" "$LOG_PATH/filesystem.log"
81
+# rpmbuild requires /bin/bash
82
+run_command "	Creating symlink: /tools/bin /bin" "ln -fsv /tools/bin ${BUILDROOT}/bin"	 "$LOG_PATH/filesystem.completed"
83
+run_command "	Building filesystem rpm (in chroot)" "./run-in-chroot.sh ${BUILDROOT} rpmbuild -ba --nocheck --define \\\"_topdir ${PARENT}\\\" ${PARENT}/SPECS/filesystem.spec" "$LOG_PATH/filesystem.log"
84
+run_command "	Removing symlink: /tools/bin /bin" "rm -f ${BUILDROOT}/bin"	 "$LOG_PATH/filesystem.completed"
85
+run_command "	Extracting filesystem rpm" "cp ${BUILDROOT}/${PARENT}/RPMS/x86_64/filesystem*.rpm ${RPM_PATH}/x86_64/" "$LOG_PATH/filesystem.log"
82 86
 fi
83
-RPMPKG="$(find $RPM_PATH -name 'filesystem*.rpm' -print)"
84
-[ -z ${RPMPKG} ] && fail "	Filesystem rpm package missing: Can not continue"
85
-run_command "	Installing filesystem" "${BUILDROOT}/tools/bin/rpm -Uvh --nodeps --root ${BUILDROOT} ${RPMPKG}" "$LOG_PATH/filesystem.completed"
87
+RPMPKGFILE="$(find ${RPM_PATH} -name 'filesystem*.rpm' -printf %f)"
88
+[ -z ${RPMPKGFILE} ] && fail "	Filesystem rpm package missing: Can not continue"
89
+run_command "	Copying filesystem rpm" "cp ${RPM_PATH}/x86_64/${RPMPKGFILE} ${BUILDROOT}/${PARENT}/RPMS/x86_64" "$LOG_PATH/filesystem.log"
90
+run_command "	Installing filesystem (in chroot)" "./run-in-chroot.sh ${BUILDROOT} rpm -Uvh --nodeps ${PARENT}/RPMS/x86_64/${RPMPKGFILE}" "$LOG_PATH/filesystem.completed"
86 91
 run_command "	Creating symlinks: /tools/bin/{bash,cat,echo,pwd,stty}" "ln -fsv /tools/bin/{bash,cat,echo,pwd,stty} ${BUILDROOT}/bin"   "$LOG_PATH/filesystem.completed"
87 92
 run_command "	Creating symlinks: /tools/bin/perl /usr/bin" "ln -fsv /tools/bin/perl ${BUILDROOT}/usr/bin" "$LOG_PATH/filesystem.completed"
88 93
 run_command "	Creating symlinks: /tools/lib/libgcc_s.so{,.1}" "ln -fsv /tools/lib/libgcc_s.so{,.1} ${BUILDROOT}/usr/lib" "$LOG_PATH/filesystem.completed"
89 94
 run_command "	Creating symlinks: /tools/lib/libstdc++.so{,.6} /usr/lib" "ln -fsv /tools/lib/libstdc++.so{,.6} ${BUILDROOT}/usr/lib"	 "$LOG_PATH/filesystem.completed"
90
-run_command "	Sed: /usr/lib/libstdc++.la" "sed 's/tools/usr/' ${BUILDROOT}/tools/lib/libstdc++.la > ${BUILDROOT}/usr/lib/libstdc++.la" "$LOG_PATH/filesystem.completed"
95
+[ -z $TOOLS_ARCHIVE ] && \
96
+    run_command "	Sed: /usr/lib/libstdc++.la" "sed 's/tools/usr/' ${BUILDROOT}/tools/lib/libstdc++.la > ${BUILDROOT}/usr/lib/libstdc++.la" "$LOG_PATH/filesystem.completed"
91 97
 run_command "	Creating symlinks: bash /bin/sh" "ln -fsv bash ${BUILDROOT}/bin/sh" "$LOG_PATH/filesystem.completed"
92
-# YUSTAS_FIXME: Add security flags for toolchain
93
-#run_command "	Adding spec file for gcc #1" "cp ${TOOLS_PATH}/../support/toolchain/gcc_specs ${BUILDROOT}/tools/lib/gcc/x86_64-unknown-linux-gnu/4.8.2/specs" "$LOG_PATH/filesystem.completed"
94
-#run_command "	Adding spec file for gcc #2" "cp ${TOOLS_PATH}/../support/toolchain/gcc_specs ${BUILDROOT}/tools/lib/gcc/x86_64-photon-linux-gnu/4.8.2/specs" "$LOG_PATH/filesystem.completed"
95 98
 
96 99
 # 	Ommited in the filesystem.spec file - not needed for booting
97 100
 [ -e ${BUILDROOT}/dev/console ]	|| mknod -m 600 ${BUILDROOT}/dev/console c 5 1
... ...
@@ -26,8 +26,8 @@ shift
26 26
 PHOTON_ENV_CMD=/usr/bin/env
27 27
 PHOTON_BASH_CMD=/bin/bash
28 28
 
29
-test -x /tools/bin/env && PHOTON_ENV_CMD=/tools/bin/env
30
-test -x /tools/bin/bash && PHOTON_BASH_CMD=/tools/bin/bash
29
+test -x ${BUILDROOT}/tools/bin/env && PHOTON_ENV_CMD=/tools/bin/env
30
+test -x ${BUILDROOT}/tools/bin/bash && PHOTON_BASH_CMD=/tools/bin/bash
31 31
 
32 32
 #
33 33
 #	Goto chroot and run the command specified as parameter.
... ...
@@ -933,8 +933,8 @@ build-libstdc++
933 933
 build-binutils2
934 934
 build-gcc2
935 935
 build-tcl
936
-build-expect
937
-build-dejagnu
936
+#build-expect
937
+#build-dejagnu
938 938
 build-check
939 939
 build-ncurses
940 940
 build-bash
... ...
@@ -966,10 +966,10 @@ build-elfutils
966 966
 build-rpm
967 967
 build-cpio
968 968
 #	The following are not used
969
-#	strip-ToolChain
969
+strip-ToolChain
970 970
 #	change-ownership
971 971
 msg "Creating tools tar ball"
972
-tar -cvhf $DESTDIR/tools-build.tar /tools
972
+tar -cf $DESTDIR/tools-build.tar -C ${BUILDDIR} tools
973 973
 rm -rf ${BUILDDIR}
974 974
 rm /tools
975 975
 msg "Successfully built the Toolchain"
... ...
@@ -1,4 +1,4 @@
1
-tools/lib64/ld-linux-x86-64.so.2
1
+tools/lib64
2 2
 tools/etc/rpc
3 3
 tools/etc/rpm/macros
4 4
 tools/bin/bash
... ...
@@ -38,6 +38,7 @@ tools/lib/libsqlite3.so
38 38
 tools/lib/librpmsign.so.1
39 39
 tools/lib/libnss_nisplus.so
40 40
 tools/lib/libm.so
41
+tools/lib/libm-2.21.so
41 42
 tools/lib/libnss_files-2.21.so
42 43
 tools/lib/librpmsign.la
43 44
 tools/lib/libnss_nisplus.so.2
... ...
@@ -215,6 +216,7 @@ tools/lib/librt-2.21.so
215 215
 tools/lib/libplc4.so
216 216
 tools/lib/libnss_db-2.21.so
217 217
 tools/lib/liblzma.la
218
+tools/lib/ld-2.21.so
218 219
 tools/lib/ld-linux-x86-64.so.2
219 220
 tools/lib/libsoftokn3.so
220 221
 tools/lib/libnss_db.so