コード例 #1
0
def create_sdk_zip_31():
    print "Creating sdk zip for 3.1 .."
    platforms = ['30armv5']
    build_utils.create_clean_env('\\Epoc32_3.1.zip')
    sdk_zip_name = deliverables_name['32']['sdk_zip_name'][1] % \
                                          (version, version_tag)
    build_utils.unzip_file_into_dir(topdir + '\\build\\' + sdk_zip_name, '\\')
    # Building only the socket
    do_setupdotpy_configure('unsigned_high_capas', platforms[0])
    run_cmd('python setup.py build ext\\amaretto\\socket\\group')
    create_and_move_zip('31')
    test_sdk_zip('_3_1')
    shutil.rmtree("\\epoc32")
コード例 #2
0
def test_sdk_zip(sdk_version):
    sign_cert = "..\\..\..\\..\\keys\\pythonteam.crt"
    sign_key = "..\\..\..\\..\\keys\\pythonteam.key"
    caps_opt = ""

    if sdk_version == '_3_0':
        elemlist_sis_name = "elemlist_%s%s_3rdEd_alabs_pythonteam.sis" \
                                                      % (version, version_tag)
        build_utils.create_clean_env('\\Epoc32_3.0.zip')
        sdk_zip_name = 'Python_%s%s_SDK_3rdEdFP2.zip' % (version, version_tag)
        caps_opt = ' --caps "%s"' % variants['alabs_pythonteam']['capas']
    elif sdk_version == '_3_1':
        elemlist_sis_name = "elemlist_%s%s_3rdEdFP1_alabs_pythonteam.sis" \
                                                      % (version, version_tag)
        build_utils.create_clean_env('\\Epoc32_3.1.zip')
        sdk_zip_name = 'Python_%s%s_SDK_3rdEdFP1.zip' % (version, version_tag)
        caps_opt = ' --caps "%s"' % variants['alabs_pythonteam']['capas']
    elif sdk_version == '_3_2':
        elemlist_sis_name = "elemlist_%s%s_3rdEdFP2_alabs_pythonteam.sis" % \
                                                        (version, version_tag)
        build_utils.create_clean_env('\\Epoc32_3.2.zip')
        caps_opt = ' --caps "%s"' % variants['alabs_pythonteam']['capas']
        sdk_zip_name = 'Python_%s%s_SDK_3rdEdFP2.zip' % (version, version_tag)

    build_utils.unzip_file_into_dir(topdir + '\\build\\' + sdk_zip_name, '\\')
    cmd_test = 'python setup.py test --testset-size 350 --sdk-version %s' % \
                                                            sdk_version
    run_cmd(cmd_test, exception_on_error=0)
    run_cmd('python setup.py configure --sdk 30armv5')
    run_cmd('python setup.py build extras\\elemlist\\group')
    run_cmd('python setup.py configure --sdk 30gcce' + caps_opt)
    run_cmd('python setup.py build extras\\elemlist\\group')

    os.chdir('extras\\elemlist\\group')
    try:
        run_cmd('makesis elemlist.pkg')
        run_cmd('signsis elemlist.sis %s %s %s' %
                (elemlist_sis_name, sign_cert, sign_key))
        shutil.copy(
            elemlist_sis_name,
            '%s\\test\\%s' % (python_readybuild_dir, elemlist_sis_name))
    finally:
        os.chdir(topdir)
コード例 #3
0
def release_build():
    global platforms
    global gflavors
    global without_src_zip
    global installer
    global variants
    global internal_proj
    global build_profile

    build_profile = 'release'
    #Build for emu first and then build for device
    gflavors = ['unsigned_alabs', 'alabs_pythonteam']
    platforms = ['30armv5']
    do_clean_and_build_emu('white_choco', platforms, run_regrtest=False)

    # When run-interpretertimer is built using GCCE on 3.0SDK the compilation
    # fails as it complains that the application is nested too deeply in the
    # drive. The same error is not seen on 3.2SDK. To workaround this 3.0SDK
    # quirk we don't build internal projects instead of the arduous task of
    # either renaming the exe or moving the project somewhere else.
    orig_internal_proj_value = internal_proj
    internal_proj = False
    build_device_and_move_sis(gflavors, ['30gcce'], create_sis=False)
    internal_proj = orig_internal_proj_value

    build_device_and_move_sis(gflavors, platforms, False)

    run_cmd('python setup.py generate_ensymble')

    create_and_move_zip('30armv5')

    # Building for 3.2 sdk
    platforms = ['32']
    build_utils.create_clean_env('\\Epoc32_3.2.zip')
    sdk_zip_name = deliverables_name['30armv5']['sdk_zip_name'][1] % \
                                          (version, version_tag)
    final_sdk_zip_name = deliverables_name['32']['sdk_zip_name'][1] % \
                                          (version, version_tag)
    os.rename(topdir + '\\build\\' + sdk_zip_name,
              topdir + '\\build\\' + final_sdk_zip_name)
    build_utils.unzip_file_into_dir(
        topdir + '\\build' + '\\Python_SDK_3rdEd_temp.zip', '\\')

    # Building only scriptext, sensorfw and iad_client on 3.2
    proj = [
        '..\\internal-src\\scriptext\\group', 'ext\\sensorfw\\group',
        '..\\internal-src\\iad_client\\group'
    ]
    # Configure for 3.2 sdk
    do_setupdotpy_configure('unsigned_alabs', platforms[0])
    for x in proj:
        run_cmd('python setup.py build ' + x)

    create_deliverables_using_elftran(platforms[0], gflavors, True)
    code_size.updatelog(
        "3.0", python_readybuild_dir + "\\" +
        deliverables_name['30armv5']['python_dll_sis_name'][1] %
        (version, version_tag, gflavors[0]),
        "C:\\Program Files\\CruiseControl\\logs\\codesize_metrics.log")
    delete_file(topdir + '\\build\\Python_SDK_3rdEd_temp.zip')

    pyd_path = '\\epoc32\\release\\winscw\\udeb\\'
    zip_object = zipfile.ZipFile(topdir + '\\build\\' + final_sdk_zip_name,
                                 'a')
    zip_object.write(pyd_path + 'kf_scriptext.pyd',
                     pyd_path + 'kf_scriptext.pyd')
    zip_object.close()

    run_cmd('python setup.py generate_ensymble')
    generate_scriptshell_sis()
    test_sdk_zip('_3_2')
    thread_pool = []
    cmd_remote_buid = 'test_device_remote --work-area ' + \
                       python_readybuild_dir
    build_commands = ['generate_docs', 'coverage', cmd_remote_buid]

    for x, command in enumerate(build_commands):
        thread_pool.append(RunBuildCmd(command))
        thread_pool[x].setName(command)
    for threads in thread_pool:
        threads.start()
    for threads in thread_pool:
        threads.join()
        if threads.getName() == 'generate_docs':
            t = BuildInstaller()
            t.start()
            t.join()
    create_sdk_zip_31()
    build_utils.create_clean_env('\\Epoc32_3.0.zip')
    if without_src_zip == False:
        # Create src zip
        zipname = '%s\\' % (python_readybuild_dir) + \
                  'pys60-%s%s_src.zip' % (version, version_tag)
        create_archive_from_directory(zipname, os.getcwd(), 'src')