def bop_main(bop_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.reobfuscate import reobfuscate
    from bop import copytree, reset_logger, recompile, copyreobfuscatedfiles, unzipandcopybtw, cleanup
    from update_binary_patches import updatepatches
    
    print '=============================== Build Biomes O Plenty Start ====================================='

    print '-=Copying BOP Files=-'
    copytree(os.path.join(bop_dir, 'src'), os.path.join(mcp_dir, 'src')) 
    os.chdir(mcp_dir)
    reset_logger()
    print '-=Recompiling=-'
    recompile(None, False, False)
    reset_logger()
    print '-=Reobfuscating=-'
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print '-=Copying Reobfuscated Files=-'
    copyreobfuscatedfiles(bop_dir, mcp_dir)
    #print 'Unzipping BTW & Copying Files'
    #unzipandcopybtw(bop_dir)
    #print 'Creating Binary Patches'
    #updatepatches()
    print '-=Cleaning Up=-'
    cleanup(bop_dir, mcp_dir)

    print '=============================== Build Biomes O Plenty Finished ================================='
Exemple #2
0
def main():
    global version_str
    global version_mc
    
    build_num = 0
    if len(sys.argv) > 1:
        try:
            build_num = int(sys.argv[1])
        except:
            pass
    ret = 0
    fml_dir = os.path.join(forge_dir, 'fml')
    build_forge_dev(mcp_dir, forge_dir, fml_dir, build_num)
    if ret != 0:
        sys.exit(ret)
    
    print '=================================== Release Start ================================='
    error_level = 0
    try:
        os.chdir(mcp_dir)
        reset_logger()
        reobfuscate(None, False, True, True, True, False)
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
Exemple #3
0
def main():
    global version_str
    build_num = 0
    if len(sys.argv) > 1:
        try:
            build_num = int(sys.argv[1])
        except:
            pass
    ret = 0
    ret = build(build_num)
    if ret != 0:
        sys.exit(ret)
    
    print '=================================== Release Start ================================='
    error_level = 0
    try:
        os.chdir(mcp_dir)
        reset_logger()
        print 'reobf start'
        reobfuscate(None, False, True, True)
        print 'reobf end'
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
def bop_main(bop_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.reobfuscate import reobfuscate
    from bop import copytree, reset_logger, recompile, copyreobfuscatedfiles, unzipandcopybtw, cleanup
    from update_binary_patches import updatepatches

    print '=============================== Build Biomes O Plenty Start ====================================='

    print '-=Copying BOP Files=-'
    copytree(os.path.join(bop_dir, 'src'), os.path.join(mcp_dir, 'src'))
    os.chdir(mcp_dir)
    reset_logger()
    print '-=Recompiling=-'
    recompile(None, False, False)
    reset_logger()
    print '-=Reobfuscating=-'
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print '-=Copying Reobfuscated Files=-'
    copyreobfuscatedfiles(bop_dir, mcp_dir)
    #print 'Unzipping BTW & Copying Files'
    #unzipandcopybtw(bop_dir)
    #print 'Creating Binary Patches'
    #updatepatches()
    print '-=Cleaning Up=-'
    cleanup(bop_dir, mcp_dir)

    print '=============================== Build Biomes O Plenty Finished ================================='
Exemple #5
0
def main():
    global version_str
    global version_mc

    build_num = 0
    if len(sys.argv) > 1:
        try:
            build_num = int(sys.argv[1])
        except:
            pass
    ret = 0
    fml_dir = os.path.join(forge_dir, 'fml')
    build_forge_dev(mcp_dir, forge_dir, fml_dir, build_num)
    if ret != 0:
        sys.exit(ret)

    print '=================================== Release Start ================================='
    error_level = 0
    try:
        os.chdir(mcp_dir)
        reset_logger()
        reobfuscate(None, False, True, True, True, False)
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
Exemple #6
0
def main():
	printHeader(1, 'Cleaning up workspace')
	cleanup()
	
	printHeader(1, 'Getting current Git branch')
	getBranchName()
	
	printHeader(1, 'Importing Forge and MCP')
	importMCP()
	
	printHeader(1, 'Loading version info from Git')
	getVersion()
	
	printHeader(1, 'Loading locally-built dependencies')
	ext_lib_path = os.path.join(workspace, "libs")
	for lib in os.listdir(ext_lib_path):
		if re.search(r'-%s-'%verData["mcversion"], lib):
			print("Loading dependency: %s" % lib)
			shutil.copy(os.path.join(ext_lib_path, lib), os.path.join(mcp_dir, "lib"))
	
	printHeader(1, 'Loading Source code into MCP')
	mergetree(os.path.join(workspace, "src"), os.path.join(mcp_dir, "src"))
	
	printHeader(1, 'Recompiling')
	from runtime.recompile import recompile
	recompile(None, False, False)
	
	printHeader(1, 'Reobfuscating')
	from runtime.reobfuscate import reobfuscate
	reobfuscate(None, False, True, False, False, False, True)
Exemple #7
0
def main():
    global version_str
    major_num = 0
    build_num = 0
    revision_num = 0
    if len(sys.argv) > 1:
        try:
            major_num = int(sys.argv[1])
            build_num = int(sys.argv[2])
            revision_num = int(sys.argv[3])
        except:
            pass
    ret = 0
    ret = build(major_num, build_num, revision_num)
    if ret != 0:
        sys.exit(ret)

    print '============================= Release Start (%d.%d.%d) ============================' % (
        major_num, build_num, revision_num)
    error_level = 0
    try:
        os.chdir(mcp_dir)
        reset_logger()
        print 'reobf start'
        reobfuscate(None, False, True, True, True, False, False)
        print 'reobf end'
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
Exemple #8
0
def main():
    printHeader(1, 'Cleaning up workspace')
    cleanup()

    printHeader(1, 'Getting current Git branch')
    getBranchName()

    printHeader(1, 'Importing Forge and MCP')
    importMCP()

    printHeader(1, 'Loading version info from Git')
    getVersion()

    printHeader(1, 'Loading locally-built dependencies')
    ext_lib_path = os.path.join(workspace, "libs")
    for lib in os.listdir(ext_lib_path):
        if re.search(r'-%s-' % verData["mcversion"], lib):
            print("Loading dependency: %s" % lib)
            shutil.copy(os.path.join(ext_lib_path, lib),
                        os.path.join(mcp_dir, "lib"))

    printHeader(1, 'Loading Source code into MCP')
    mergetree(os.path.join(workspace, "src"), os.path.join(mcp_dir, "src"))

    printHeader(1, 'Recompiling')
    from runtime.recompile import recompile
    recompile(None, False, False)

    printHeader(1, 'Reobfuscating')
    from runtime.reobfuscate import reobfuscate
    reobfuscate(None, False, True, False, False, False, True)
Exemple #9
0
def soulforge_main(soulforge_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.updatemd5 import updatemd5
    from runtime.reobfuscate import reobfuscate
    from soulforge import (
        decompile,
        apply_initial_patches,
        apply_soulforge_patches,
        recompile,
        unzipbtw,
        copyinitialreobfuscatedfiles,
        rezipbtw,
        apply_mod_patches,
        reset_logger,
        copytree,
    )

    print "=============================== Soulforge Setup Start ====================================="

    print "Decompiling"
    decompile(mcp_dir, soulforge_dir)
    print "Applying patches"
    apply_initial_patches(mcp_dir, soulforge_dir, os.path.join(mcp_dir, "src"), True)
    os.chdir(mcp_dir)
    updatemd5(None, True, False, False)
    reset_logger()
    os.chdir(soulforge_dir)
    apply_soulforge_patches(mcp_dir, soulforge_dir, os.path.join(mcp_dir, "src"), True)
    copytree(os.path.join(soulforge_dir, "src", "minecraft"), os.path.join(mcp_dir, "src", "minecraft"))
    copytree(os.path.join(soulforge_dir, "src", "common"), os.path.join(mcp_dir, "src", "minecraft"))
    copytree(os.path.join(soulforge_dir, "src", "minecraft_server"), os.path.join(mcp_dir, "src", "minecraft_server"))
    copytree(os.path.join(soulforge_dir, "src", "common"), os.path.join(mcp_dir, "src", "minecraft_server"))
    print "Copy external libraries"
    copytree(os.path.join(soulforge_dir, "lib"), os.path.join(mcp_dir, "lib"))
    os.chdir(mcp_dir)
    print "Recompiling"
    recompile(None, False, False)
    reset_logger()
    print "Reobfuscating"
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print "Unzipping BTW"
    unzipbtw(soulforge_dir)
    print "Copying Reobfuscated Files"
    copyinitialreobfuscatedfiles(soulforge_dir, mcp_dir)
    print "Rezipping Files"
    rezipbtw(soulforge_dir)
    updatemd5(None, True, False, False)
    reset_logger()
    os.chdir(soulforge_dir)
    copytree(os.path.join(mcp_dir, "src"), os.path.join(mcp_dir, "src_base"))
    apply_mod_patches(mcp_dir, soulforge_dir, os.path.join(mcp_dir, "src"), True)
    print "Setup workspace"
    if os.path.isdir(os.path.join(mcp_dir, "eclipse")):
        shutil.rmtree(os.path.join(mcp_dir, "eclipse"))
    copytree(os.path.join(soulforge_dir, "addondev", "tmpworkspace"), os.path.join(mcp_dir, "eclipse"))
    print "=============================== Soulforge Setup Finished ================================="
Exemple #10
0
def soulforge_main(soulforge_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.updatemd5 import updatemd5
    from runtime.reobfuscate import reobfuscate
    from soulforge import decompile, apply_initial_patches, apply_soulforge_patches, recompile, unzipbtw, copyinitialreobfuscatedfiles, rezipbtw, apply_mod_patches, reset_logger, copytree

    print '=============================== Soulforge Setup Start ====================================='

    print 'Decompiling'
    decompile(mcp_dir, soulforge_dir)
    print 'Applying patches'
    apply_initial_patches(mcp_dir, soulforge_dir, os.path.join(mcp_dir, 'src'),
                          True)
    os.chdir(mcp_dir)
    updatemd5(None, True, False, False)
    reset_logger()
    os.chdir(soulforge_dir)
    apply_soulforge_patches(mcp_dir, soulforge_dir,
                            os.path.join(mcp_dir, 'src'), True)
    copytree(os.path.join(soulforge_dir, 'src', 'minecraft'),
             os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(soulforge_dir, 'src', 'common'),
             os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(soulforge_dir, 'src', 'minecraft_server'),
             os.path.join(mcp_dir, 'src', 'minecraft_server'))
    copytree(os.path.join(soulforge_dir, 'src', 'common'),
             os.path.join(mcp_dir, 'src', 'minecraft_server'))
    print 'Copy external libraries'
    copytree(os.path.join(soulforge_dir, 'lib'), os.path.join(mcp_dir, 'lib'))
    os.chdir(mcp_dir)
    print 'Recompiling'
    recompile(None, False, False)
    reset_logger()
    print 'Reobfuscating'
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print 'Unzipping BTW'
    unzipbtw(soulforge_dir)
    print 'Copying Reobfuscated Files'
    copyinitialreobfuscatedfiles(soulforge_dir, mcp_dir)
    print 'Rezipping Files'
    rezipbtw(soulforge_dir)
    updatemd5(None, True, False, False)
    reset_logger()
    os.chdir(soulforge_dir)
    copytree(os.path.join(mcp_dir, 'src'), os.path.join(mcp_dir, 'src_base'))
    apply_mod_patches(mcp_dir, soulforge_dir, os.path.join(mcp_dir, 'src'),
                      True)
    print 'Setup workspace'
    if os.path.isdir(os.path.join(mcp_dir, 'eclipse')):
        shutil.rmtree(os.path.join(mcp_dir, 'eclipse'))
    copytree(os.path.join(soulforge_dir, 'addondev', 'tmpworkspace'),
             os.path.join(mcp_dir, 'eclipse'))
    print '=============================== Soulforge Setup Finished ================================='
Exemple #11
0
def bop_main(bop_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.reobfuscate import reobfuscate
    from bop import copytree, reset_logger, recompile, copyreobfuscatedfiles, unzipandcopybtw, movetodist, packagedist, cleanup
    from update_binary_patches import updatepatches

    print '=============================== Build Biomes O Plenty Start ====================================='

    print 'Copying BOP Files'
    copytree(os.path.join(bop_dir, 'src', 'minecraft'),
             os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(bop_dir, 'src', 'common'),
             os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(bop_dir, 'src', 'minecraft_server'),
             os.path.join(mcp_dir, 'src', 'minecraft_server'))
    copytree(os.path.join(bop_dir, 'src', 'common'),
             os.path.join(mcp_dir, 'src', 'minecraft_server'))

    print 'Copying BO Files'
    copytree(os.path.join(bop_dir, 'src_ores', 'minecraft'),
             os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(bop_dir, 'src_ores', 'common'),
             os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(bop_dir, 'src_ores', 'minecraft_server'),
             os.path.join(mcp_dir, 'src', 'minecraft_server'))
    copytree(os.path.join(bop_dir, 'src_ores', 'common'),
             os.path.join(mcp_dir, 'src', 'minecraft_server'))

    os.chdir(mcp_dir)
    reset_logger()
    print 'Recompiling'
    recompile(None, False, False)
    reset_logger()
    print 'Reobfuscating'
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print 'Copying Reobfuscated Files'
    copyreobfuscatedfiles(bop_dir, mcp_dir)
    print 'Unzipping BTW & Copying Files'
    unzipandcopybtw(bop_dir)
    print 'Creating Binary Patches'
    updatepatches()
    print 'Moving Files To Temporary Dist Folder'
    movetodist(bop_dir)
    print 'Packaging Files'
    packagedist(bop_dir)
    print 'Cleaning Up'
    cleanup(bop_dir, mcp_dir)

    print '=============================== Build Biomes O Plenty Finished ================================='
Exemple #12
0
def main():
    global version_str
    global version_mc

    parser = OptionParser()
    parser.add_option("-m", "--mcp-dir", action="store", dest="mcp_dir", help="MCP Path", default=None)
    parser.add_option("-b", "--build", action="store", dest="build", help="Build number", default=None)
    parser.add_option(
        "-s", "--skipchangelog", action="store", dest="skip_changelog", help="Skip Changelog", default=False
    )
    options, _ = parser.parse_args()

    build_num = 0
    if not options.build is None:
        try:
            build_num = int(options.build)
        except:
            pass

    mcp_dir = os.path.join(forge_dir, "mcp")
    if not options.mcp_dir is None:
        mcp_dir = os.path.abspath(options.mcp_dir)
    elif os.path.isfile(os.path.join("..", "runtime", "commands.py")):
        mcp_dir = os.path.abspath("..")

    ret = 0
    fml_dir = os.path.join(forge_dir, "fml")
    build_forge_dev(mcp_dir, forge_dir, fml_dir, build_num)
    if ret != 0:
        sys.exit(ret)

    print "=================================== Release Start ================================="
    error_level = 0
    try:
        sys.path.append(mcp_dir)
        from runtime.reobfuscate import reobfuscate

        os.chdir(mcp_dir)
        reset_logger()
        reobfuscate(None, False, True, True, True, False)
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print "Reobfusicate Exception: %d " % e.code
        error_level = e.code
Exemple #13
0
def main():
    global version_str
    global version_mc
    
    parser = OptionParser()
    parser.add_option('-m', '--mcp-dir', action='store', dest='mcp_dir', help='MCP Path', default=None)
    parser.add_option('-b', '--build', action='store', dest='build', help='Build number', default=None)
    parser.add_option('-s', '--skipchangelog', action='store_true', dest='skip_changelog', help='Skip Changelog', default=False)
    parser.add_option('-j', '--sign-jar', action='store', dest='sign_jar', help='Path to jar signer command', default=None)
    options, _ = parser.parse_args()
    
    build_num = 0
    if not options.build is None:
        try:
            build_num = int(options.build)
        except:
            pass

    mcp_dir = os.path.join(forge_dir, 'mcp')
    if not options.mcp_dir is None:
        mcp_dir = os.path.abspath(options.mcp_dir)
    elif os.path.isfile(os.path.join('..', 'runtime', 'commands.py')):
        mcp_dir = os.path.abspath('..')
        
    ret = 0
    fml_dir = os.path.join(forge_dir, 'fml')
    build_forge_dev(mcp_dir, forge_dir, fml_dir, build_num)
    if ret != 0:
        sys.exit(ret)
    

    print '=================================== Release Start ================================='
    error_level = 0
    try:
        sys.path.append(mcp_dir)
        from runtime.reobfuscate import reobfuscate
        os.chdir(mcp_dir)
        reset_logger()
        reobfuscate(None, False, True, True, True, False)
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
Exemple #14
0
def soulforge_main(soulforge_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.reobfuscate import reobfuscate
    from soulforge import copytree, reset_logger, recompile, copyreobfuscatedfiles, unzipandcopybtw, movetodist, packagedist, cleanup
    from update_binary_patches import updatepatches
    
    print '=============================== Build Soulforge Start ====================================='

    print 'Copying Soulforge Files'
    copytree(os.path.join(soulforge_dir, 'src', 'minecraft'), os.path.join(mcp_dir, 'src', 'minecraft')) 
    copytree(os.path.join(soulforge_dir, 'src', 'common'), os.path.join(mcp_dir, 'src', 'minecraft')) 
    copytree(os.path.join(soulforge_dir, 'src', 'minecraft_server'), os.path.join(mcp_dir, 'src', 'minecraft_server')) 
    copytree(os.path.join(soulforge_dir, 'src', 'common'), os.path.join(mcp_dir, 'src', 'minecraft_server'))
    copytree(os.path.join(soulforge_dir, 'srcbiomesoplenty', 'minecraft'), os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(soulforge_dir, 'srcbiomesoplenty', 'common'), os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(soulforge_dir, 'srcbiomesoplenty', 'minecraft_server'), os.path.join(mcp_dir, 'src', 'minecraft_server'))
    copytree(os.path.join(soulforge_dir, 'srcbiomesoplenty', 'common'), os.path.join(mcp_dir, 'src', 'minecraft_server'))
    copytree(os.path.join(soulforge_dir, 'srccustomores', 'minecraft'), os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(soulforge_dir, 'srccustomores', 'common'), os.path.join(mcp_dir, 'src', 'minecraft'))
    copytree(os.path.join(soulforge_dir, 'srccustomores', 'minecraft_server'), os.path.join(mcp_dir, 'src', 'minecraft_server'))
    copytree(os.path.join(soulforge_dir, 'srccustomores', 'common'), os.path.join(mcp_dir, 'src', 'minecraft_server'))

    os.chdir(mcp_dir)
    reset_logger()
    print 'Recompiling'
    recompile(None, False, False)
    reset_logger()
    print 'Reobfuscating'
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print 'Copying Reobfuscated Files'
    copyreobfuscatedfiles(soulforge_dir, mcp_dir)
    print 'Unzipping BTW & Copying Files'
    unzipandcopybtw(soulforge_dir)
    print 'Creating Binary Patches'
    updatepatches()
    print 'Moving Files To Temporary Dist Folder'
    movetodist(soulforge_dir)
    print 'Packaging Files'
    packagedist(soulforge_dir)
    print 'Cleaning Up'
    cleanup(soulforge_dir, mcp_dir)

    print '=============================== Build Soulforge Finished ================================='
Exemple #15
0
def soulforge_main(soulforge_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.reobfuscate import reobfuscate
    from soulforge import copytree, reset_logger, recompile, copyreobfuscatedfiles, unzipandcopybtw, movetodist, cleanup
    from update_binary_patches import updatepatches
    
    print '=============================== Build Soulforge Start ====================================='

    print 'Copying Mod Files'
    copytree(os.path.join(mcp_dir, 'src'), os.path.join(mcp_dir, 'src_temp'))
    
    for dirname in os.walk(os.path.join(soulforge_dir, 'addondev', 'mods', '.')).next()[1]:
        if os.path.isdir(os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src', 'minecraft')):
            copytree(os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src', 'minecraft'), os.path.join(mcp_dir, 'src', 'minecraft'))
            
        if os.path.isdir(os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src', 'common')):
            copytree(os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src', 'common'), os.path.join(mcp_dir, 'src', 'minecraft'))
            copytree(os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src', 'common'), os.path.join(mcp_dir, 'src', 'minecraft_server'))    
        
        if os.path.isdir(os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src', 'minecraft_server')):
            copytree(os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src', 'minecraft_server'), os.path.join(mcp_dir, 'src', 'minecraft_server'))

    os.chdir(mcp_dir)
    reset_logger()
    print 'Recompiling'
    recompile(None, False, False)
    reset_logger()
    print 'Reobfuscating'
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print 'Copying Reobfuscated Files'
    copyreobfuscatedfiles(soulforge_dir, mcp_dir)
    print 'Unzipping BTW & Copying Files'
    unzipandcopybtw(soulforge_dir)
    print 'Creating Binary Patches'
    updatepatches()
    print 'Moving Files To Temporary Dist Folder'
    movetodist(soulforge_dir)
    print 'Cleaning Up'
    cleanup(soulforge_dir, mcp_dir)

    print '=============================== Build Soulforge Finished ================================='
Exemple #16
0
def main():
    global version_str
    major_num = 0
    build_num = 0
    revision_num = 0
    shouldBuild = 0
    
    if len(sys.argv) > 1:
        try:
            major_num = int(sys.argv[1])
            build_num = int(sys.argv[2])
            revision_num = int(sys.argv[3])
        except:
            pass
    if len(sys.argv) > 4:
        try:
            shouldBuild = str2bool(sys.argv[4])
        except:
            pass
        
    ret = 0
    if shouldBuild:
        ret = build(major_num, build_num, revision_num)
    else:
        print 'Skipping Build Process...'
    if ret != 0:
        sys.exit(ret)
    
    print '============================= Release Start (%d.%d.%d) ============================' % (major_num, build_num, revision_num)
    error_level = 0
    try:
        os.chdir(mcp_dir)
        reset_logger()
        print 'reobf start'
        reobfuscate(None, False, True, True, True, False, False)
        print 'reobf end'
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
Exemple #17
0
def main():
    global version_str
    global version_mc
    
    parser = OptionParser()
    parser.add_option('-m', '--mcp-dir', action='store', dest='mcp_dir', help='MCP Path', default=None)
    parser.add_option('-b', '--build', action='store', dest='build', help='Build number', default=None)
    parser.add_option('-s', '--skipchangelog', action='store_true', dest='skip_changelog', help='Skip Changelog', default=False)
    parser.add_option('-j', '--sign-jar', action='store', dest='sign_jar', help='Path to jar signer command', default=None)
    options, _ = parser.parse_args()
    
    build_num = 0
    if not options.build is None:
        try:
            build_num = int(options.build)
        except:
            pass

    mcp_dir = os.path.join(forge_dir, 'mcp')
    if not options.mcp_dir is None:
        mcp_dir = os.path.abspath(options.mcp_dir)
        
    ret = 0
    fml_dir = os.path.join(forge_dir, 'fml')
    ret = build_forge_dev(mcp_dir, forge_dir, fml_dir, build_num)
    if ret != 0:
        sys.exit(ret)
    
    
    temp_dir = os.path.join(forge_dir, 'temp')
    src_dir = os.path.join(mcp_dir, 'src')
    reobf_dir = os.path.join(mcp_dir, 'reobf')
    client_dir = os.path.join(reobf_dir, 'minecraft')
    fml_dir = os.path.join(temp_dir, 'fml')

    print '=================================== Release Start ================================='
    
    fml = glob.glob(os.path.join(forge_dir, 'fml', 'target', 'fml-src-*.%d-*.zip' % build_num))
    if not len(fml) == 1:
        if len(fml) == 0:
            print 'Missing FML source zip, should be named fml-src-*.zip inside ./fml/target/ created when running setup'
        else:
            print 'To many FML source zips found, we should only have one. Check the Forge Git for the latest FML version supported'
        sys.exit(1)
    
    if os.path.isdir(fml_dir):
        shutil.rmtree(fml_dir)
        
    print 'Extracting: %s' % os.path.basename(fml[0])
    zf = zipfile.ZipFile(fml[0])
    zf.extractall(temp_dir)
    zf.close()
    
    error_level = 0
    try:
        sys.path.append(mcp_dir)
        from runtime.reobfuscate import reobfuscate
        os.chdir(mcp_dir)
        reset_logger()
        reobfuscate(None, False, True, True, True, False, False)
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
Exemple #18
0
def main():
    global version_str
    global version_mc

    parser = OptionParser()
    parser.add_option('-m',
                      '--mcp-dir',
                      action='store',
                      dest='mcp_dir',
                      help='MCP Path',
                      default=None)
    parser.add_option('-b',
                      '--build',
                      action='store',
                      dest='build',
                      help='Build number',
                      default=None)
    parser.add_option('-s',
                      '--skipchangelog',
                      action='store_true',
                      dest='skip_changelog',
                      help='Skip Changelog',
                      default=False)
    parser.add_option('-j',
                      '--sign-jar',
                      action='store',
                      dest='sign_jar',
                      help='Path to jar signer command',
                      default=None)
    options, _ = parser.parse_args()

    build_num = 0
    if not options.build is None:
        try:
            build_num = int(options.build)
        except:
            pass

    mcp_dir = os.path.join(forge_dir, 'mcp')
    if not options.mcp_dir is None:
        mcp_dir = os.path.abspath(options.mcp_dir)

    ret = 0
    fml_dir = os.path.join(forge_dir, 'fml')
    ret = build_forge_dev(mcp_dir, forge_dir, fml_dir, build_num)
    if ret != 0:
        sys.exit(ret)

    temp_dir = os.path.join(forge_dir, 'temp')
    src_dir = os.path.join(mcp_dir, 'src')
    reobf_dir = os.path.join(mcp_dir, 'reobf')
    client_dir = os.path.join(reobf_dir, 'minecraft')
    fml_dir = os.path.join(temp_dir, 'fml')

    print '=================================== Release Start ================================='

    fml = glob.glob(
        os.path.join(forge_dir, 'fml', 'target',
                     'fml-src-*.%d-*.zip' % build_num))
    if not len(fml) == 1:
        if len(fml) == 0:
            print 'Missing FML source zip, should be named fml-src-*.zip inside ./fml/target/ created when running setup'
        else:
            print 'To many FML source zips found, we should only have one. Check the Forge Git for the latest FML version supported'
        sys.exit(1)

    if os.path.isdir(fml_dir):
        shutil.rmtree(fml_dir)

    print 'Extracting: %s' % os.path.basename(fml[0])
    zf = zipfile.ZipFile(fml[0])
    zf.extractall(temp_dir)
    zf.close()

    if os.path.isfile('MANIFEST.MF'):
        os.remove('MANIFEST.MF')

    fml_name = os.path.basename(fml[0]).replace('src', 'universal').replace(
        '.zip', '.jar').replace('-master.', '.')
    print('Extracting %s MANIFEST.MF' % fml_name)
    with closing(
            zipfile.ZipFile(os.path.join(forge_dir, 'fml', 'target', fml_name),
                            mode='r')) as zip_in:
        with closing(open('MANIFEST.MF', 'wb')) as out:
            out.write(zip_in.read('META-INF/MANIFEST.MF'))

    error_level = 0
    try:
        sys.path.append(mcp_dir)
        from runtime.reobfuscate import reobfuscate
        os.chdir(mcp_dir)
        reset_logger()
        reobfuscate(None, False, True, True, True, False, False)
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code
Exemple #19
0
def soulforge_main(soulforge_dir, mcp_dir):
    sys.path.append(mcp_dir)
    from runtime.reobfuscate import reobfuscate
    from soulforge import copytree, reset_logger, recompile, copyreobfuscatedfiles, unzipandcopybtw, movetodist, cleanup
    from update_binary_patches import updatepatches

    print '=============================== Build Soulforge Start ====================================='

    print 'Copying Mod Files'
    copytree(os.path.join(mcp_dir, 'src'), os.path.join(mcp_dir, 'src_temp'))

    for dirname in os.walk(os.path.join(soulforge_dir, 'addondev', 'mods',
                                        '.')).next()[1]:
        if os.path.isdir(
                os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src',
                             'minecraft')):
            copytree(
                os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src',
                             'minecraft'),
                os.path.join(mcp_dir, 'src', 'minecraft'))

        if os.path.isdir(
                os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src',
                             'common')):
            copytree(
                os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src',
                             'common'),
                os.path.join(mcp_dir, 'src', 'minecraft'))
            copytree(
                os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src',
                             'common'),
                os.path.join(mcp_dir, 'src', 'minecraft_server'))

        if os.path.isdir(
                os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src',
                             'minecraft_server')):
            copytree(
                os.path.join(soulforge_dir, 'addondev', 'mods', dirname, 'src',
                             'minecraft_server'),
                os.path.join(mcp_dir, 'src', 'minecraft_server'))

    os.chdir(mcp_dir)
    reset_logger()
    print 'Recompiling'
    recompile(None, False, False)
    reset_logger()
    print 'Reobfuscating'
    reobfuscate(None, False, False, False, False, False, False)
    reset_logger()
    print 'Copying Reobfuscated Files'
    copyreobfuscatedfiles(soulforge_dir, mcp_dir)
    print 'Unzipping BTW & Copying Files'
    unzipandcopybtw(soulforge_dir)
    print 'Creating Binary Patches'
    updatepatches()
    print 'Moving Files To Temporary Dist Folder'
    movetodist(soulforge_dir)
    print 'Cleaning Up'
    cleanup(soulforge_dir, mcp_dir)

    print '=============================== Build Soulforge Finished ================================='
Exemple #20
0
def main():
    global version_str
    global version_mc

    parser = OptionParser()
    parser.add_option('-m',
                      '--mcp-dir',
                      action='store',
                      dest='mcp_dir',
                      help='MCP Path',
                      default=None)
    parser.add_option('-b',
                      '--build',
                      action='store',
                      dest='build',
                      help='Build number',
                      default=None)
    parser.add_option('-s',
                      '--skipchangelog',
                      action='store_true',
                      dest='skip_changelog',
                      help='Skip Changelog',
                      default=False)
    parser.add_option('-j',
                      '--sign-jar',
                      action='store',
                      dest='sign_jar',
                      help='Path to jar signer command',
                      default=None)
    options, _ = parser.parse_args()

    build_num = 0
    if not options.build is None:
        try:
            build_num = int(options.build)
        except:
            pass

    mcp_dir = os.path.join(forge_dir, 'mcp')
    if not options.mcp_dir is None:
        mcp_dir = os.path.abspath(options.mcp_dir)
    elif os.path.isfile(os.path.join('..', 'runtime', 'commands.py')):
        mcp_dir = os.path.abspath('..')

    ret = 0
    fml_dir = os.path.join(forge_dir, 'fml')
    build_forge_dev(mcp_dir, forge_dir, fml_dir, build_num)
    if ret != 0:
        sys.exit(ret)

    print '=================================== Release Start ================================='
    error_level = 0
    try:
        sys.path.append(mcp_dir)
        from runtime.reobfuscate import reobfuscate
        os.chdir(mcp_dir)
        reset_logger()
        reobfuscate(None, False, True, True, True, False)
        reset_logger()
        os.chdir(forge_dir)
    except SystemExit, e:
        print 'Reobfusicate Exception: %d ' % e.code
        error_level = e.code