install

installer
Log | Files | Refs | README | LICENSE | git clone https://git.ne02ptzero.me/git/install

commit 2b1741bcecb9719631e76d25790e8e77891a94f4
parent a45393e75f04dee79d16e618c918d898a2b85568
Author: Ne02ptzero <louis@ne02ptzero.me>
Date:   Fri,  2 Dec 2016 18:29:40 +0100

Add(libstdcpp): Add package in the install:

Set option TMP_INSTALL as default

Diffstat:
Mpkgs/glibc_p1/glibc_p1.py | 2+-
Apkgs/libstdcpp_p1/__init__.py | 0
Apkgs/libstdcpp_p1/libstdcpp_p1.py | 73+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Mscreens/install/install.py | 3++-
Mscreens/options/options.py | 2+-
5 files changed, 77 insertions(+), 3 deletions(-)

diff --git a/pkgs/glibc_p1/glibc_p1.py b/pkgs/glibc_p1/glibc_p1.py @@ -40,7 +40,7 @@ class Glibc_P1: "SBU": 4, # SBU (Compilation time) "tmp_install": True, # Is this package part of the temporary install "after": False, - "next": False, # Next package to install + "next": "libstdcpp", # Next package to install "urls": [ # Url to download the package. The first one must be morphux servers "https://install.morphux.org/packages/glibc-2.24.tar.xz" ] diff --git a/pkgs/libstdcpp_p1/__init__.py b/pkgs/libstdcpp_p1/__init__.py diff --git a/pkgs/libstdcpp_p1/libstdcpp_p1.py b/pkgs/libstdcpp_p1/libstdcpp_p1.py @@ -0,0 +1,73 @@ +################################### LICENSE #################################### +# Copyright 2016 Morphux # +# # +# Licensed under the Apache License, Version 2.0 (the "License"); # +# you may not use this file except in compliance with the License. # +# You may obtain a copy of the License at # +# # +# http://www.apache.org/licenses/LICENSE-2.0 # +# # +# Unless required by applicable law or agreed to in writing, software # +# distributed under the License is distributed on an "AS IS" BASIS, # +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # +# See the License for the specific language governing permissions and # +# limitations under the License. # +################################################################################ + +## +# libstdcpp_p1.py +# Created: 02/12/2016 +# By: Louis Solofrizzo <louis@morphux.org> +## + +import os + +class Libstdcpp_P1: + + conf_lst = {} + e = False + root_dir = "" + + def init(self, c_lst, ex, root_dir): + self.conf_lst = c_lst + self.e = ex + self.root_dir = root_dir + self.config = { + "name": "libstdcpp", # Name of the package + "version": "6.2.0", # Version of the package + "size": 666, # Size of the installed package (MB) + "archive": "gcc-6.2.0.tar.bz2", # Archive name + "SBU": 0.4, # SBU (Compilation time) + "tmp_install": True, # Is this package part of the temporary install + "after": False, + "next": False, # Next package to install + "chdir": False, + "urls": [ # Url to download the package. The first one must be morphux servers + "https://install.morphux.org/packages/gcc-6.2.0.tar.bz2" + ] + } + return self.config + + def before(self): + os.chdir("gcc-6.2.0") + res = self.e(["rm", "-rf", "build"]) + res = self.e(["mkdir", "-vp", "build"]) + os.chdir("build") + return res + + def configure(self): + return self.e(["../configure", + "--prefix=/tools", + "--host=" + self.conf_lst["target"], + "--disable-multilib", + "--disable-nls", + "--disable-libstdcxx-threads", + "--disable-libstdcxx-pch", + "--with-gxx-include-dir=/tools/"+ self.conf_lst["target"] +"/include/c++/6.2.0" + ]) + + def make(self): + return self.e(["make", "-j", self.conf_lst["cpus"]]) + + def install(self): + return self.e(["make", "install"]) diff --git a/screens/install/install.py b/screens/install/install.py @@ -450,7 +450,8 @@ class Install: self.async_progress_bar() # Chdir into the decompressed directory (Must be in the format name-version) - os.chdir(pkg[1]["name"] + "-" + pkg[1]["version"]) + if "chdir" not in pkg[1]: + os.chdir(pkg[1]["name"] + "-" + pkg[1]["version"]) # Before instructions if "before" not in pkg[1]: diff --git a/screens/options/options.py b/screens/options/options.py @@ -42,7 +42,7 @@ class Options: ("BIN_INSTALL", "Install system with binaries only, do not compile anything (FASTER)", 1), ("LOG", "Log Install", 0), ("AUTO_REBOOT", "Reboot automatically after sucessfull install", 0), - ("TMP_INSTALL", "Use a temporary system build (LFS-like, SLOWER)", 0), + ("TMP_INSTALL", "Use a temporary system build (LFS-like, SLOWER)", 1), ("MERGE_USR", "Build the system with symbolic links between /{bin,sbin} and /usr", 1), ]