debian_catalog = DebianCatalog(DIR_DEBIAN_CATALOG, debian_path)
freebsd_path = os.path.join(DIR_TMP, 'freebsd')
freebsd_catalog = FreeBSDCatalog(DIR_FREEBSD_CATALOG, freebsd_path)
netbsd_path = os.path.join(DIR_TMP, 'netbsd')
netbsd_catalog = NetBSDCatalog(DIR_NETBSD_CATALOG, netbsd_path)
openbsd_path = os.path.join(DIR_TMP, 'openbsd')
openbsd_catalog = OpenBSDCatalog(DIR_OPENBSD_CATALOG, openbsd_path)

# Build all packages.
catalog_set = CatalogSet({
    debian_catalog, freebsd_catalog, netbsd_catalog, openbsd_catalog,
})
for package in target_packages.values():
    catalog_set.package_and_insert(package, os.path.join(DIR_TMP, 'catalog'))

debian_catalog.finish(DEBIAN_PRIVATE_KEY)
freebsd_catalog.finish(FREEBSD_PRIVATE_KEY)

# Finish up and put the new catalogs in place.
os.rename(DIR_DEBIAN_CATALOG, os.path.join(DIR_TMP, 'debian.old'))
os.rename(debian_path, DIR_DEBIAN_CATALOG)
os.rename(DIR_FREEBSD_CATALOG, os.path.join(DIR_TMP, 'freebsd.old'))
os.rename(freebsd_path, DIR_FREEBSD_CATALOG)
os.rename(DIR_NETBSD_CATALOG, os.path.join(DIR_TMP, 'netbsd.old'))
os.rename(netbsd_path, DIR_NETBSD_CATALOG)
os.rename(DIR_OPENBSD_CATALOG, os.path.join(DIR_TMP, 'openbsd.old'))
os.rename(openbsd_path, DIR_OPENBSD_CATALOG)

# Zap the temporary directory.
util.remove(DIR_TMP)
Esempio n. 2
0
    CygwinCatalog(None, DIR_PACKAGES_CYGWIN),
    DebianCatalog(None, DIR_PACKAGES_DEBIAN),
    FreeBSDCatalog(None, DIR_PACKAGES_FREEBSD),
    HomebrewCatalog(None, DIR_PACKAGES_HOMEBREW, 'http://example.com/'),
    NetBSDCatalog(None, DIR_PACKAGES_NETBSD),
    OpenBSDCatalog(None, DIR_PACKAGES_OPENBSD),
    RedHatCatalog(None, DIR_PACKAGES_REDHAT),
}


def build_package(package: TargetPackage) -> None:
    version = FullVersion(version=package.get_version())
    for catalog in catalogs:
        catalog.insert(package, version, catalog.package(package, version))


if len(sys.argv) > 1:
    # Only build the packages provided on the command line.
    for name in set(sys.argv[1:]):
        for arch in config.ARCHITECTURES:
            build_package(target_packages[(name, arch)])
else:
    # Build all packages.
    for package in target_packages.values():
        build_package(package)

# When terminating successfully, remove the build directory. It will
# only contain temporary files that were used to generate the last
# package.
util.remove(config.DIR_BUILDROOT)
Esempio n. 3
0
for package in target_packages.values():
    catalog_set.package_and_insert(package, os.path.join(DIR_TMP, 'catalog'))

archlinux_catalog.finish(ARCHLINUX_PRIVATE_KEY)
cygwin_catalog.finish(CYGWIN_PRIVATE_KEY)
debian_catalog.finish(DEBIAN_PRIVATE_KEY)
freebsd_catalog.finish(FREEBSD_PRIVATE_KEY)
redhat_catalog.finish(REDHAT_PRIVATE_KEY)

# Finish up and put the new catalogs in place.
os.rename(DIR_ARCHLINUX_CATALOG, os.path.join(DIR_TMP, 'archlinux.old'))
os.rename(archlinux_path, DIR_ARCHLINUX_CATALOG)
os.rename(DIR_CYGWIN_CATALOG, os.path.join(DIR_TMP, 'cygwin.old'))
os.rename(cygwin_path, DIR_CYGWIN_CATALOG)
os.rename(DIR_DEBIAN_CATALOG, os.path.join(DIR_TMP, 'debian.old'))
os.rename(debian_path, DIR_DEBIAN_CATALOG)
os.rename(DIR_FREEBSD_CATALOG, os.path.join(DIR_TMP, 'freebsd.old'))
os.rename(freebsd_path, DIR_FREEBSD_CATALOG)
os.rename(DIR_HOMEBREW_CATALOG, os.path.join(DIR_TMP, 'homebrew.old'))
os.rename(homebrew_path, DIR_HOMEBREW_CATALOG)
os.rename(DIR_NETBSD_CATALOG, os.path.join(DIR_TMP, 'netbsd.old'))
os.rename(netbsd_path, DIR_NETBSD_CATALOG)
os.rename(DIR_OPENBSD_CATALOG, os.path.join(DIR_TMP, 'openbsd.old'))
os.rename(openbsd_path, DIR_OPENBSD_CATALOG)
os.rename(DIR_REDHAT_CATALOG, os.path.join(DIR_TMP, 'redhat.old'))
os.rename(redhat_path, DIR_REDHAT_CATALOG)

# Zap the temporary directories.
util.remove(config.DIR_BUILDROOT)
util.remove(DIR_TMP)