Esempio n. 1
0
def gen_sdk_scripts(triplet,
                    elfcode,
                    prj_name,
                    prj_version,
                    builddir,
                    sdkpath):

    prj_name = prj_name.replace(" ", "_")
    prj_version = prj_version.replace(" ", "_")

    # generate the setup script
    sdkvalues = {'sdk_arch': 'x86_64',
                 'sdk_gcc_ver': '',
                 'sdk_path': '/opt/elbe-sdk-%s-%s-%s' % (triplet,
                                                         prj_name,
                                                         prj_version),
                 'sdk_ext_path': '~/elbe-sdk',
                 'real_multimach_target_sys': triplet,
                 'target_elfcode': elfcode,
                 'sdk_title': 'ELBE %s' % prj_name,
                 'sdk_version': prj_version}

    sdkname = 'setup-elbe-sdk-%s-%s-%s.sh' % (triplet, prj_name, prj_version)
    write_pack_template(os.path.join(builddir, sdkname),
                        'toolchain-shar-extract.sh.mako',
                        sdkvalues)
    envname = 'environment-setup-elbe-%s-%s-%s' % (triplet,
                                                   prj_name,
                                                   prj_version)
    write_pack_template(os.path.join(sdkpath, envname),
                        'environment-setup-elbe.mako',
                        sdkvalues)

    return sdkname
Esempio n. 2
0
def gen_sdk_scripts(triplet, elfcode, prj_name, prj_version, builddir,
                    sdkpath):
    # pylint: disable=too-many-arguments

    prj_name = prj_name.replace(" ", "_")
    prj_version = prj_version.replace(" ", "_")

    # generate the setup script
    sdkvalues = {
        'sdk_arch': 'x86_64',
        'sdk_gcc_ver': '',
        'sdk_path':
        '/opt/elbe-sdk-%s-%s-%s' % (triplet, prj_name, prj_version),
        'sdk_ext_path': '~/elbe-sdk',
        'real_multimach_target_sys': triplet,
        'target_elfcode': elfcode,
        'sdk_title': 'ELBE %s' % prj_name,
        'sdk_version': prj_version
    }

    sdkname = 'setup-elbe-sdk-%s-%s-%s.sh' % (triplet, prj_name, prj_version)
    write_pack_template(os.path.join(builddir, sdkname),
                        'toolchain-shar-extract.sh.mako', sdkvalues)
    envname = 'environment-setup-elbe-%s-%s-%s' % (triplet, prj_name,
                                                   prj_version)
    write_pack_template(os.path.join(sdkpath, envname),
                        'environment-setup-elbe.mako', sdkvalues)

    return sdkname
Esempio n. 3
0
File: rfs.py Progetto: koberbe/elbe
def create_apt_prefs(xml, rfs):

    filename =  "etc/apt/preferences"

    if rfs.lexists(filename):
        rfs.remove(filename)

    rfs.mkdir_p("/etc/apt")

    pinned_origins = []
    if xml.has('project/mirror/url-list'):
        for url in xml.node('project/mirror/url-list'):
            if not url.has('binary'):
                continue

            repo = url.node('binary')
            if 'pin' not in repo.et.attrib:
                continue

            origin = urlsplit(repo.et.text.strip()).hostname
            pin = repo.et.attrib['pin']
            if 'package' in repo.et.attrib:
                package = repo.et.attrib['package']
            else:
                package = '*'
            pinning = {'pin': pin,
                       'origin': origin,
                       'package': package}
            pinned_origins.append(pinning)

    d = {"xml": xml,
         "prj": xml.node("/project"),
         "pkgs": xml.node("/target/pkg-list"),
         "porgs": pinned_origins}

    write_pack_template(rfs.fname(filename), "preferences.mako", d)
Esempio n. 4
0
    def create_apt_prefs (self):

        filename = self.rfs.path + "/etc/apt/preferences"

        if os.path.exists (filename):
            os.remove (filename)

        self.rfs.mkdir_p ("/etc/apt")

        pinned_origins = []
        if self.xml.has('project/mirror/url-list'):
            for url in self.xml.node('project/mirror/url-list'):
                if not url.has('binary'):
                    continue

                repo = url.node('binary')
                if not 'pin' in repo.et.attrib:
                    continue

                origin = urlparse.urlsplit(repo.et.text.strip()).hostname
                pin = repo.et.attrib['pin']
                if 'package' in repo.et.attrib:
                    package = repo.et.attrib['package']
                else:
                    package = '*'
                pinning = { 'pin':     pin,
                            'origin':  origin,
                            'package': package }
                pinned_origins.append(pinning)

        d = { "xml":   self.xml,
              "prj":   self.xml.node("/project"),
              "pkgs":  self.xml.node("/target/pkg-list"),
              "porgs": pinned_origins }

        write_pack_template( filename, "preferences.mako", d )