Palacios Public Git Repository

To checkout Palacios execute

  git clone http://v3vee.org/palacios/palacios.web/palacios.git
This will give you the master branch. You probably want the devel branch or one of the release branches. To switch to the devel branch, simply execute
  cd palacios
  git checkout --track -b devel origin/devel
The other branches are similar.


Move vnet to src/palacios/
[palacios.git] / SETUP_DEV_ENV.pl
index 1299e5c..2c74c0c 100755 (executable)
@@ -2,9 +2,14 @@
 
 
 
-$location = `pwd`;
-chomp $location;
-$location .= "/devtools";
+$dev_root = `pwd`;
+#
+# On cygwin, do something like the following
+# pwd behaves trangely on cygwin
+#
+#$dev_root='/home/pdinda/Codes/vmm-dev';
+chomp $dev_root;
+$location = $dev_root . "/devtools";
 
 
 print "\n";
@@ -14,7 +19,15 @@ print "Location: " . $location . "\n\n";
 mkdir $location;
 
 
+
+#install_binutils_2_16_91_i386();
+install_gcc_3_4_6_i386();
 install_nasm();
+#
+# This part is not quite working yet
+# on cygwin, do through it by hand      
+#
+#install_dev86_0_16_17();
 
 
 sub install_nasm {
@@ -36,4 +49,93 @@ sub install_nasm {
   print "Installing...";
   `make install`;
   print "Done!!\n\n";
+  chdir $dev_root;
+}
+
+
+
+sub install_binutils_2_16_91_i386 {
+  print "Installing binutils v2.16.91\n";
+  chdir "./utils";
+  print "Unpacking...";
+  `tar -xzf binutils-2.16.91.0.7.tar.gz`;
+  print "done\n";
+  chdir "binutils-2.16.91.0.7";
+  print "Configuring...";
+  `./configure --prefix=$location/i386 --target=i386-elf --disable-nls`;
+  print "done\n";
+  print "Compiling...";
+  `make -j 4 all`;
+  print "done\n";
+  print "Installing...";
+  `make install`;
+  print "done!!\n";
+  chdir $dev_root;
+}
+
+
+sub install_gcc_3_4_6_i386 {
+  install_binutils_2_16_91_i386();
+  $ENV{'PATH'} = "$location/i386/bin:" . $ENV{'PATH'};
+
+  print "Installing gcc v3.4.6\n";
+  chdir "./utils";
+  print "Unpacking...";
+  `tar -xzf gcc-3.4.6.tar.gz`;
+  print "done\n";
+  chdir "gcc-3.4.6";
+  print "Configuring...";
+  `./configure --prefix=$location/i386 --target=i386-elf --disable-nls --enable-languages=c,c++ --without-headers`;
+  print "done\n";
+  print "Compiling...";
+  `make -j 4 all-gcc`;
+  print "done\n";
+  print "Installing...";
+  `make install-gcc`;
+  print "done!!\n";
+  chdir $dev_root;
+}
+
+
+sub install_binutils_2_16_91_x86_64 {
+
+}
+
+
+sub install_gcc_3_4_6_x86_64 {
+
+  print "Installing gcc v3.4.6\n";
+  chdir "./utils";
+  print "Unpacking...";
+  `tar -xzf gcc-3.4.6.tar.gz`;
+  print "done\n";
+  chdir "gcc-3.4.6";
+  print "Configuring...";
+  `./configure --target=x86_64 --prefix=$location/gcc_3.4.6-x86_64 --disable-nls --enable-languages=c,c++ --without-headers`;
+  print "done\n";
+  print "Compiling...\n";
+  `make all-gcc`;
+  print "done\n";
+  print "Installing...\n";
+  `make install-gcc`;
+  print "done!!\n";
+  chdir $dev_root;
+}
+
+sub install_dev86_0_16_17 {
+
+  print "Installing bcc, ld86, as86, and bcc-cpp from Dev86src-0.16.17.tar.gz\n";
+  chdir "./utils";
+  print "Unpacking...";
+  `tar -xzf Dev86src-0.16.17.tar.gz`;
+  print "done\n";
+  chdir "./dev86-0.16.17";
+  print "Compiling...\n";
+  `make as86 ld86 bcc86`;
+  `make -C cpp`;
+  print "done\n";
+  print "Installing...\n";
+  `cp as/as86.exe bcc/bcc.exe bcc/bcc-cc1.exe cpp/bcc-cpp.exe ld/ld86.exe $location/bin`;
+  print "done!!\n";
+  chdir $dev_root;
 }