- From: Patrick McDermott <patrick DОТ mcdermott АТ libiquity DОТ com>
- To: proteanos-dev АТ lists DОТ proteanos DОТ com
- Date: Mon, 18 Mar 2019 23:01:11 -0400
- Message-id: 20190318230111 DОТ patrick DОТ mcdermott АТ libiquity DОТ com
About ===== opkbuild is a distribution build system -- a set of tools for building software packages. From source packages it builds binary packages for use with the opkg package manager. Currently one format of source package is supported by opkbuild: ProteanOS Source Package Format 2.0: http://specs.proteanos.com/spf-2.0/ opkbuild is similar in function to the development library and utilities of dpkg, the Debian package manager: https://packages.debian.org/sid/dpkg-dev https://packages.debian.org/sid/libdpkg-perl https://wiki.debian.org/Teams/Dpkg/ Downloading =========== Source archives are available from the files site by HTTP or FTP: http://files.proteanos.com/pub/opkbuild/4.0.0/ ftp://files.proteanos.com/pub/opkbuild/4.0.0/ Here are the MD5 checksums: 7babb2a43b2f5225777b43570e1d8cb5 opkbuild-4.0.0.tar.gz 3ca81936dd403367741f0dabc6bf5f34 opkbuild-4.0.0.tar.bz2 a83a0d910d4cb31454915937f3929540 opkbuild-4.0.0.tar.xz Here are the SHA-256 checksums: bb68723c55550ce59a1df94c6dc612aba3c4da3e9f2fc24a7f8a5252682d2602 opkbuild-4.0.0.tar.gz 7e4f37d42abc6898a939eef50ca82c2ae0547e3fabb48fa0d8b72000428aee80 opkbuild-4.0.0.tar.bz2 6d220dcf221868331bb7f1adea25938a09d264174c42759418dd295776b84517 opkbuild-4.0.0.tar.xz The sources are maintained in a Git repository: http://git.proteanos.com/opkbuild/opkbuild.git/ git://git.proteanos.com/opkbuild/opkbuild.git/ This release is marked by the "opkbuild/4.0.0" tag. NEWS for Version 4.0.0 ====================== This is a major new release of opkbuild. Major user-facing changes include xz decompression and binary package substitution variables. There are also many behind-the-scenes improvements to code quality, safety, and test suite coverage. Trivia: Since opkbuild was part of opkhelper in versions up to and including the incomplete and unreleased 2.0.0, and since version 3.0.0 never officially left "beta" status, version 4.0.0 is technically the first released version of opkbuild in its seven-year history. Utilities: * ob-unpacksource now supports decompression of xz-compressed upstream archives. * ob-gencontrol now substitutes variables from "<binpkg>.substvars" files in the build work area, enabling new use cases such as automatic shared library dependencies. * ob-applypatches now tracks and skips applied patches, instead of re-running the patch command and throwing an error. * Manual pages for all utilities have been updated/written and are now built and installed for the first time since opkhelper 1.0.0. * Utilities can now be run in-place without installation by setting libopkbuild's OB_LIB_BUILDDIR and OB_EXE_BUILDDIR environment variables to the "locale" directory in the build directory. * All utilities except ob-checkbuilddeps and ob-installplatconf are now covered by the test suite. libopkbuild: * libopkbuild's "shared object version" has been bumped to 2 to reflect a new incompatible API. * libopkbuild now aborts the program, instead of just returning 125 if any function is called with missing arguments. * The following functions have been removed from the libopkbuild API: - ob_match_arch() -- use ob_arch_is_concerned() instead - ob_match_plat() -- use ob_plat_is_concerned() instead - ob_parse_package_metadata() -- merged into ob_init_package() - ob_set_locale_path() -- set OB_LIB_BUILDDIR and/or OB_EXE_BUILDDIR environment variables to load localized messages from a build directory - ob_summarize_package_arch() -- was an unimplemented stub - ob_summarize_package_plat() -- was an unimplemented stub - ob_use() -- libopkbuild modules are now "linked" together into one library file, so this function is no longer needed * ob_set_substvar() has been renamed to ob_set_source_substvar(), a new function ob_set_binary_substvar() has been added, and ob_substvars() now has an optional "package" operand. * ob_parse_changelog() and ob_parse_control() now pass arguments to user callbacks instead of setting global variables. * Option letters have changed for ob_parse_dep(), ob_reduce_deps(), and ob_get_binary_packages(). * All libopkbuild functions are now documented in manual pages generated from inline comments. * Test suite coverage has improved slightly. Build system: * The build system is now generated by GNU Autoconf and Automake. * libopkbuild is now distributed as a sort of shared library object, "linked" by the shld linker tool. By default, it is installed into "/usr/local/share/sh/". * The test suite now uses the Test Anything Protocol and Automake's TAP driver. * The mksysconf tool (used to generate "proteanos_arch" and "proteanos_plat" system configuration files for testing opkbuild) has been removed. Bug fixes and minor changes: * A bug in the option parsing of ob_parse_dep(), ob_reduce_deps(), ob_parse_version(), ob_parse_package_metadata(), and ob_get_binary_packages() that affects GNU Bash and possibly other shells has been fixed. * A bug in opkbuild that would ignore errors from the "build" makefile's "build" target has been fixed. * ob_set_substvar()'s (now ob_set_source_substvar()'s) return value on success has been fixed. * ob-gencontrol now drops trailing commas and spaces in dependencies. * ob-installdocs now correctly handles "docs" file lines with destinations omitted. * Underscores are no longer allowed in substitution variable names, in stricter compliance with SPF 2.0. * Code quality has been improved: eval commands are now safer against mistakes in input validation/escaping, echo commands have been replaced with printf and here-documents, errors are handled (making the shell "-e" option safe), no undefined variables are expanded (making the shell "-u" option safe), obselescent [ (test) command options have been replaced, commands are protected from variable arguments beginning with "-", and printf commands are protected against variable format strings that might contain "%". Legal: * The minimum version of the GNU General Public License has been bumped to version 3. Shortlog of Changes Since Version 3.0.0-beta7 ============================================= 1 P. J. McDermott 556 Patrick McDermott Commit descriptions suppressed for brevity. To see a log summary with descriptions, run: $ git shortlog opkbuild-3.0.0-beta7..opkbuild/4.0.0 Diffstat of Changes Since Version 3.0.0-beta7 ============================================= 124 files changed, 7308 insertions(+), 5382 deletions(-) Difference statistics truncated for brevity. To see full statistics, run: $ git diff --stat --find-renames=50% \ > opkbuild-3.0.0-beta7..opkbuild/4.0.0 -- Patrick McDermott, CEO Libiquity Putting customers in control of high-quality technologies http://www.libiquity.com/
Attachment:
pgpgV8Usa1rzh.pgp
Description: OpenPGP digital signature
- opkbuild 4.0.0 released, Patrick McDermott