summaryrefslogtreecommitdiff
path: root/bootstrap/README.OpenServer5
diff options
context:
space:
mode:
authorryoon <ryoon>2014-03-14 21:54:25 +0000
committerryoon <ryoon>2014-03-14 21:54:25 +0000
commit35d89165995b0ad743537f3ea702491ec6305281 (patch)
tree40c7f4a350a7188ffab1b01164a568b190056908 /bootstrap/README.OpenServer5
parent17c9149c25d6a1f3a76b0bf7204900925a02f671 (diff)
downloadpkgsrc-35d89165995b0ad743537f3ea702491ec6305281.tar.gz
Add README for Xinuos SCO OpenServer 5.0.7/3.2
Diffstat (limited to 'bootstrap/README.OpenServer5')
-rw-r--r--bootstrap/README.OpenServer5247
1 files changed, 247 insertions, 0 deletions
diff --git a/bootstrap/README.OpenServer5 b/bootstrap/README.OpenServer5
new file mode 100644
index 00000000000..3889a91aa9f
--- /dev/null
+++ b/bootstrap/README.OpenServer5
@@ -0,0 +1,247 @@
+$NetBSD: README.OpenServer5,v 1.1 2014/03/14 21:54:25 ryoon Exp $
+
+XXX You should change your /bin/sh to shells/pdksh under OpenServer 5.0.7/3.2!!
+
+Supported platforms
+===================
+- Xinuos SCO OpenServer 5.0.7/3.2
+
+Prerequisite softwares
+======================
+- SCO OpenServer 5 Development System with Maintenance Pack 4 update
+- GCC 4.2.4
+- GNU binutils 2.24
+
+Compiler
+========
+C compiler that is shipped with OpenServer 5 Development System cannot
+build pkgsrc/devel/bmake. Please use GCC 4.2.4 built from scratch.
+You can follow "How to build gcc-4.2.4 for SCO OpenServer 5.0.7/.3.2"
+steps.
+
+Prebuilt GCC is not available, because it contains proprietary header files
+in its directory structure (GCC fixincludes mechanism).
+
+Selecting which ABI to use
+==========================
+Xinuos SCO OpenServer 5.0.7 can handle COFF and ELF binaries.
+I have tested only ELF binaries.
+But OpenServer 5.0.7's native CC generates COFF by default.
+
+Start bootstrapping pkgsrc
+==========================
+PREFER_PKGSRC=yes build is recommended.
+
+ # ./bootstrap --prefer-pkgsrc yes
+
+And you must remove libtool-base that is built and installed during
+bootstrap with
+
+ $ pkg_delete -ff libtool-base
+
+It contains the path to bootstrap working directory and does not work properly.
+And rm command cannot accept "rm -f". You should install sysutils/coreutils
+and put the following line to your mk.conf.
+
+ TOOLS_PLATFORM.rm?=/a/pkg/bin/grm
+
+How to build gcc-4.2.4 for SCO OpenServer 5.0.7/.3.2
+====================================================
+To follow these steps, you must have SCO OpenServer 5 Development System.
+
+OpenServer 5.0.7's tar command does not support builtin gzip or bzip2
+support. You should use pipe.
+
+ $ gzcat make-3.79.1.tar.gz | tar xvf -
+
+For configure newer GNU packages, you should replace your /bin/sh with
+ksh from pkgsrc/shells/pdksh!!
+
+
+1. Build GNU make 3.79.1 from make-3.79.1.tar.gz
+ Use OpenServer's native CC, AS, LD, and MAKE.
+
+ $ cd make-3.79.1
+ $ ./configure --prefix=$HOME/tools
+ $ make
+ $ make install
+
+2. Build GCC 2.95.3 C compiler from GNU official gcc-core-2.95.3.tar.gz
+ with minimal patch (*1)
+ Use OpenServer's native CC, AS, LD, and GNU make.
+ In this stage, you cannot build C++ compiler with internel compiler error.
+
+ $ mkdir build0
+ $ cd build0
+ $ PATH=$HOME/tools/bin:$PATH ../gcc-2.95.3/configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+3. Build GCC 2.95.3 C and C++ compilers from GNU official
+ gcc-core-2.95.3.tar.gz and gcc-g++-2.95.3.tar.gz with minimal patch
+ (*1 and *2)
+ Use OpenServer's native AS, LD, GCC, and GNU make.
+ In this stage, you can build C++ compiler with GCC C compiler.
+
+ $ mkdir build1
+ $ cd build1
+ $ PATH=$HOME/tools/bin:$PATH ../gcc-2.95.3/configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+4. Build GNU m4 1.4.3 from m4-1.4.3.tar.gz
+ Use OpenServer's native AS, LD, GNU make, and GCC.
+
+ $ cd m4-1.4.3
+ $ PATH=$HOME/tools/bin:$PATH ./configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+5. Build GNU bison 2.0 from bison-2.0.tar.gz
+ Use OpenServer's native AS, LD, GNU make, and GCC.
+
+ $ cd bison-2.0
+ $ PATH=$HOME/tools/bin:$PATH ./configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+6. Build flex 2.5.4 from flex-2.5.4a.tar.bz2
+ Use OpenServer's native AS, LD, GNU make, and GCC.
+
+ $ cd flex-2.5.4a
+ $ PATH=$HOME/tools/bin:$PATH ./configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+7. Build texinfo 4.8 with texinfo-4.8.tar.gz
+ Use OpenServer's native AS, LD, GNU make, and GCC.
+
+ $ cd texinfo-4.8
+ $ PATH=$HOME/tools/bin:$PATH ./configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+8. Build GNU gperf 2.7.2 from gperf-2.7.2.tar.gz
+ Use OpenServer's native AS, LD, GNU make, and GCC (including g++).
+
+ $ cd gperf-2.7.2
+ $ PATH=$HOME/tools/bin:$PATH ./configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+9. Build GCC 2.95.3pl4 (bootstrap) from Xinuos gnutools-5.0.7Kj-SRC.tar.bz2
+ Use OpenServer's native LD, AS, GNU make, and GCC.
+
+ $ mkdir build2
+ $ cd build2
+ $ PATH=$HOME/tools/bin:$PATH ../gcc-2.95.3/configure --prefix=$HOME/tools
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make bootstrap
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+10. Build GNU binutils 2.14pl1 from Xinuos gnutools-5.0.7Kj-SRC.tar.bz2
+ Use OpenServer's native LD, AS, GNU make, and GCC.
+ LD from binutils is not available.
+
+ $ mkdir binutils-build0
+ $ cd binutils-build0
+ $ PATH=$HOME/tools/bin:$PATH ../binutils-2.14/configure --prefix=$HOME/tools2
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+11. Build GCC 2.95.3pl4 (bootstrap) again
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+
+ $ mkdir build3
+ $ cd build3
+ $ PATH=$HOME/tools2/bin:$HOME/tools/bin:$PATH ../gcc-2.95.3/configure --prefix=$HOME/tools2 --with-gnu-as
+ $ PATH=$HOME/tools2/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make bootstrap
+ $ PATH=$HOME/tools2/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+12. Build GNU binutils 2.14pl1 from Xinuos gnutools-5.0.7Kj-SRC.tar.bz2
+ Use OpenServer's native LD, AS, GNU make, and GCC.
+
+ $ mkdir binutils-build1
+ $ cd binutils-build1
+ $ PATH=$HOME/tools2/bin:$PATH ../binutils-2.14/configure --prefix=$HOME/tools3
+ $ PATH=$HOME/tools2/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools2/bin:$PATH $HOME/tools/bin/make install
+
+13. Build GCC 4.2.4 with patch (*3)
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+ XXX You cannot use native TAR to extract GCC 4.2.4's tar ball!!
+
+ $ mkdir 42build0
+ $ cd 42build0
+ $ PATH=$HOME/tools3/bin:$HOME/tools2/bin:$HOME/tools/bin:$PATH ../gcc-4.2.4/configure --prefix=$HOME/tools3 --with-gnu-as --disable-nls --enable-languages=c
+ $ PATH=$HOME/tools3/bin:$HOME/tools2/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make
+ $ PATH=$HOME/tools3/bin:$HOME/tools2/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+14. Build GNU binutils 2.24 with patch (*4)
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+
+ $ mkdir 224binutils
+ $ cd 224binutils
+ $ PATH=$HOME/tools3/bin:$HOME/tools/bin:$PATH ../binutils-2.24/configure --prefix=$HOME/tools4 --disable-nls --disable-werror
+ $ PATH=$HOME/tools3/bin:$HOME/tools/bin:$PATH ~/tools/bin/make
+ $ PATH=$HOME/tools3/bin:$HOME/tools/bin:$PATH ~/tools/bin/make install
+
+15. Build GCC 4.2.4 (bootstrap) with patch (*3)
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+
+ $ mkdir 42build1
+ $ cd 42build1
+ $ PATH=$HOME/tools3/bin:$HOME/tools/bin:$PATH ../gcc-4.2.4/configure --prefix=$HOME/tools4 --with-gnu-as --disable-nls --enable-languages=c
+ $ PATH=$HOME/tools3/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make bootstrap
+ $ PATH=$HOME/tools3/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+16. Build GNU binutils 2.24 with patch (*4)
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+
+ $ mkdir 224binutils
+ $ cd 224binutils
+ $ PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ../binutils-2.24/configure --prefix=/opt/prebuilt --disable-nls --disable-werror
+ $ PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make
+ # PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make install
+
+17. Build GNU gmp 4.2.4 from gmp-4.2.4.tar.gz
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+
+ $ cd gmp-4.2.4
+ $ PATH=/opt/prebuilt/bin:$PATH ./configure --prefix=/opt/prebuilt --build=i386-pc-sco3.2v5.0.7
+ $ PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make
+ # PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make install
+
+18. Build mpfr 2.3.2 from mpfr-2.3.2.tar.gz
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+
+ $ cd mpfr-2.3.2
+ $ PATH=/opt/prebuilt/bin:$PATH ./configure --prefix=/opt/prebuilt
+ $ PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make
+ # PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make install
+
+19. Build GNU mpc 0.8.2 from mpc-0.8.2.tar.gz
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+
+ $ cd mpc-0.8.2
+ $ PATH=/opt/prebuilt/bin:$PATH ./configure --prefix=/opt/prebuilt
+ $ PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make
+ # PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ~/tools/bin/make install
+
+20. Build GCC 4.2.4 fullset (bootstrap) with patch (*3)
+ Use OpenServer's native LD, GNU binutils (AS), GNU make, and GCC.
+ After this step, it is ready to bootstrap pkgsrc with GCC 4.2.4.
+
+ $ mkdir 42build2
+ $ cd 42build2
+ $ PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH ../gcc-4.2.4/configure --prefix=/opt/prebuilt --with-gnu-as --disable-nls
+ $ PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make bootstrap
+ # PATH=$HOME/tools4/bin:$HOME/tools/bin:$PATH $HOME/tools/bin/make install
+
+Patches
+=======
+There are in
+http://ftp.netbsd.org/pub/NetBSD/misc/ryoon/SCO-OpenServer-5.0.7_3.2/ .
+(*1) gcc-2.95.3-SCO-OpenServer5.0.7_3.2-C-fix.diff
+(*2) gcc-2.95.3-SCO-OpenServer5.0.7_3.2-C++-fix.diff
+(*3) gcc-4.2.4-SCO-OpenServer-5.0.7_3.2.diff
+(*4) binutils-2.24-SCO-OpenServer-5.0.7_3.2.diff