Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package procenv for openSUSE:Factory checked in at 2021-04-10 15:27:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/procenv (Old) and /work/SRC/openSUSE:Factory/.procenv.new.2401 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "procenv" Sat Apr 10 15:27:47 2021 rev:3 rq:883980 version:0.55 Changes: -------- --- /work/SRC/openSUSE:Factory/procenv/procenv.changes 2021-03-17 20:20:08.143332347 +0100 +++ /work/SRC/openSUSE:Factory/.procenv.new.2401/procenv.changes 2021-04-10 15:28:52.426484077 +0200 @@ -1,0 +2,9 @@ +Fri Apr 9 07:10:28 UTC 2021 - Michael Vetter <[email protected]> + +- Update to 0.55: + * Documentation improvements. + * Hurd build fixes: + - Disable detailed memory reporting as sysinfo() not available). + - Fixed detection for modern versions of Hurd. + +------------------------------------------------------------------- Old: ---- procenv-0.54.tar.gz New: ---- procenv-0.55.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ procenv.spec ++++++ --- /var/tmp/diff_new_pack.mP3O1Q/_old 2021-04-10 15:28:52.870484599 +0200 +++ /var/tmp/diff_new_pack.mP3O1Q/_new 2021-04-10 15:28:52.874484604 +0200 @@ -18,7 +18,7 @@ Name: procenv -Version: 0.54 +Version: 0.55 Release: 0 Summary: Process Environment Dump Tool License: GPL-3.0-or-later @@ -52,7 +52,7 @@ %files %license COPYING -%doc AUTHORS ChangeLog NEWS README TODO +%doc AUTHORS NEWS README.md TODO %{_bindir}/%{name} %{_mandir}/man1/%{name}.1%{?ext_man} ++++++ procenv-0.54.tar.gz -> procenv-0.55.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/.magnum.yml new/procenv-0.55/.magnum.yml --- old/procenv-0.54/.magnum.yml 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/.magnum.yml 1970-01-01 01:00:00.000000000 +0100 @@ -1,9 +0,0 @@ -install: - - sudo apt-get update -qq - - sudo apt-get install -y autopoint automake expat libnuma-dev libcap-dev check - -script: - - autoreconf -fi - - ./configure - - make -j4 - - make check diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/Makefile.am new/procenv-0.55/Makefile.am --- old/procenv-0.54/Makefile.am 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/Makefile.am 2021-04-08 22:24:31.000000000 +0200 @@ -1,4 +1,5 @@ -AUTOMAKE_OPTIONS = +# Don't require 'README' as we use a markdown file instead. +AUTOMAKE_OPTIONS = foreign SUBDIRS = src ACLOCAL_AMFLAGS = -I m4 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/Makefile.in new/procenv-0.55/Makefile.in --- old/procenv-0.54/Makefile.in 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/Makefile.in 2021-04-08 22:24:31.000000000 +0200 @@ -195,9 +195,9 @@ $(top_srcdir)/config/config.guess \ $(top_srcdir)/config/config.sub \ $(top_srcdir)/config/install-sh $(top_srcdir)/config/missing \ - AUTHORS COPYING ChangeLog INSTALL NEWS README TODO \ - config/compile config/config.guess config/config.sub \ - config/depcomp config/install-sh config/missing + AUTHORS COPYING ChangeLog INSTALL NEWS TODO config/compile \ + config/config.guess config/config.sub config/depcomp \ + config/install-sh config/missing DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) @@ -346,7 +346,9 @@ top_build_prefix = @top_build_prefix@ top_builddir = @top_builddir@ top_srcdir = @top_srcdir@ -AUTOMAKE_OPTIONS = + +# Don't require 'README' as we use a markdown file instead. +AUTOMAKE_OPTIONS = foreign SUBDIRS = src ACLOCAL_AMFLAGS = -I m4 EXTRA_DIST = m4/ChangeLog man/procenv.1 procenv.spec @@ -361,15 +363,15 @@ @for dep in $?; do \ case '$(am__configure_deps)' in \ *$$dep*) \ - echo ' cd $(srcdir) && $(AUTOMAKE) --gnu'; \ - $(am__cd) $(srcdir) && $(AUTOMAKE) --gnu \ + echo ' cd $(srcdir) && $(AUTOMAKE) --foreign'; \ + $(am__cd) $(srcdir) && $(AUTOMAKE) --foreign \ && exit 0; \ exit 1;; \ esac; \ done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --gnu Makefile'; \ + echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign Makefile'; \ $(am__cd) $(top_srcdir) && \ - $(AUTOMAKE) --gnu Makefile + $(AUTOMAKE) --foreign Makefile Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status @case '$?' in \ *config.status*) \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/NEWS new/procenv-0.55/NEWS --- old/procenv-0.54/NEWS 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/NEWS 2021-04-08 22:24:31.000000000 +0200 @@ -1,3 +1,11 @@ +0.55 2021-04-08 + + * Documentation improvements. + * Hurd build fixes: + - Disable detailed memory reporting as `sysinfo()` not available). + - Fixed detection for modern versions of Hurd. + * Nits. + 0.54 2021-03-15 * --capabilities: Added new capabilities: @@ -12,7 +20,7 @@ - `security.bsd.see_other_uids=0` - `security.bsd.see_other_gids=0` - `kern.randompid=1` - * Fix compiler flag checking in the configure script. + * Fix compiler flag checking in the configure script. 0.53 2021-03-01 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/README new/procenv-0.55/README --- old/procenv-0.54/README 2021-04-10 15:28:52.970484717 +0200 +++ new/procenv-0.55/README 1970-01-01 01:00:00.000000000 +0100 @@ -1 +0,0 @@ -symbolic link to README.rst diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/README-BUILD.md new/procenv-0.55/README-BUILD.md --- old/procenv-0.54/README-BUILD.md 1970-01-01 01:00:00.000000000 +0100 +++ new/procenv-0.55/README-BUILD.md 2021-04-08 22:24:31.000000000 +0200 @@ -0,0 +1,15 @@ +# Building on FreeBSD + +FreeBSD is awkward. This worked for me on FreeBSD 10.2: + +```bash +$ gmake CC=clang-devel LD=ld.gold LDFLAGS='-v -fuse-ld=gold' +``` + +# Building on Minix + +Try this:: + +```bash +$ ./configure CC=clang CFLAGS='-I/usr/pkg/include' LDFLAGS='-L/usr/pkg/lib' +``` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/README-BUILD.rst new/procenv-0.55/README-BUILD.rst --- old/procenv-0.54/README-BUILD.rst 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/README-BUILD.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1,13 +0,0 @@ -Building on FreeBSD -------------------- - -FreeBSD is awkward. This worked for me on FreeBSD 10.2:: - - $ gmake CC=clang-devel LD=ld.gold LDFLAGS='-v -fuse-ld=gold' - -Building on Minix ------------------- - -Try this:: - - $ ./configure CC=clang CFLAGS='-I/usr/pkg/include' LDFLAGS='-L/usr/pkg/lib' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/README.md new/procenv-0.55/README.md --- old/procenv-0.54/README.md 1970-01-01 01:00:00.000000000 +0100 +++ new/procenv-0.55/README.md 2021-04-08 22:24:31.000000000 +0200 @@ -0,0 +1,117 @@ +[](http://perso.crans.org/besson/LICENSE.html) +[](https://travis-ci.org/jamesodhunt/procenv) +[](https://scan.coverity.com/projects/jamesodhunt-procenv) +[](https://flattr.com/profile/jamesodhunt) +[](https://www.paypal.me/jamesodhunt) + +# `procenv` + +[](https://asciinema.org/a/118278?autoplay=1) + +## Overview + +`procenv` is a simple command-line utility, written in C and licensed +under the GPL, that dumps all attributes of the environment in which it +runs, in well-structured plain ASCII, JSON (YAML), XML or CSV. + +> **Note:** +> +> If you find anything missing from the `procenv` output, please either raise +> an issue or send a patch :) + +It is useful as a test tool, to understand what environment a process +runs in and for system comparison. + +`procenv` runs on the following operating systems: + +- Android +- FreeBSD +- GNU Hurd +- GNU Linux +- Minix 3 +- NetBSD +- OpenBSD +- OSX + +It unashamedly emulates a number of existing system utilities as it is +attempting to be all-encompassing: I wrote it with the aim of being able to +dump "everything" that a process may care about by simply running a single +program (by default). Also, the line of demarcation between "process", +"program" and "system" is slightly blurry in some aspects. For example +`sysconf(3)` variables could arguably be considered system attributes, but +`procenv` shows these too since they are obviously meant to be queryable by +applications. + +## Results + +`procenv` is extremely useful for learning about the environment +software builds in. Often, such systems disallow login, but do allow +access to log files. Handily, when you build `procenv`, it runs a battery of +tests and *also runs itself*. This means that the build environment gets +captured in the build logs themselves. + +Select a link below and drill down to the build log to see the `procenv` +output: + +### Semaphore-CI + +- https://semaphoreci.com/jamesodhunt/procenv + (Click "Passed", "Job #", then "`make check`" to see output). + +### Travis-CI + +- https://travis-ci.org/jamesodhunt/procenv + +### Open Build Service (OBS) + +- https://build.opensuse.org/package/show/home:jamesodhunt:procenv/procenv + +If you distro does not yet provide a `procenv` package, binary +packages for RHEL, Fedora, CentOS, SLES, and Arch Linux are available +from here: + +- https://software.opensuse.org/download.html?project=home%3Ajamesodhunt%3Aprocenv&package=procenv + +Click on your icon for your distro and follow the instructions. + +Note that these packages are "bleeding edge" (generated directly from the GitHub repository). + +### Debian + +#### `buildd` environment + +- https://buildd.debian.org/status/package.php?p=procenv&suite=sid + +#### Debian `autopkgtest` (DEP-8) environment + +- https://ci.debian.net/packages/p/procenv/ + +### Fedora + +- https://src.fedoraproject.org/rpms/procenv/ + +### Gentoo + +- https://packages.gentoo.org/packages/sys-process/procenv + +### Ubuntu + +- https://launchpad.net/ubuntu/+source/procenv + +## Porting + +Can you help port `procenv` to other platforms (AIX, HP-UX, Solaris, ...), or +can you give me access to new platforms? If so, please get in contact or take +a look at the [porting document](src/platform). + +## References + +See http://ifdeflinux.blogspot.com/2012/10/procenv-and-process-environment.html + +## Author + +`procenv` was written by James Hunt <[email protected]>. + +## Home Page + +- https://github.com/jamesodhunt/procenv diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/README.rst new/procenv-0.55/README.rst --- old/procenv-0.54/README.rst 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/README.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1,200 +0,0 @@ -.. image:: https://img.shields.io/badge/license-GPL-3.0.svg - -.. image:: https://travis-ci.org/jamesodhunt/procenv.svg?branch=master - :target: https://travis-ci.org/jamesodhunt/procenv - -.. image:: https://scan.coverity.com/projects/jamesodhunt-procenv/badge.svg - :target: https://scan.coverity.com/projects/jamesodhunt-procenv - :alt: Coverity Scan Build Status - -.. image:: https://img.shields.io/badge/donate-flattr-blue.svg - :alt: Donate via flattr - :target: https://flattr.com/profile/jamesodhunt - -.. image:: https://img.shields.io/badge/paypal-donate-blue.svg - :alt: Donate via Paypal - :target: https://www.paypal.me/jamesodhunt - -======= -procenv -======= - -.. raw:: html - - <a href="https://asciinema.org/a/118278"><img src="https://asciinema.org/a/118278.png" width="836"/></a> - -.. contents:: -.. sectnum:: - -Overview --------- - -``procenv`` is a simple command-line utility, written in C and licensed -under the GPL, that dumps all attributes of the environment [#]_ in which -it runs, in well-structured plain ASCII, JSON (YAML), XML or CSV. - -It is useful as a test tool, to understand what environment a process -runs in and for system comparison. - -``procenv`` runs on the following operating systems: - -- Android -- FreeBSD -- GNU Hurd -- GNU Linux -- Minix 3 -- NetBSD -- OpenBSD -- OSX - -It unashamedly emulates a number of existing system -utilities as it is attempting to be all-encompassing: I wrote it with -the aim of being able to dump "everything" that a process may care about -by simply running a single program (by default). Also, the line of -demarcation between "process", "program" and "system" is slightly -blurry in some aspects. For example ``sysconf(3)`` variables could -arguably be considered system attributes, but procenv shows these too -since they are obviously meant to be queryable by applications. - -.. [#] If you find anything missing, please either raise a bug or send a - patch :) - -Results -------- - -``procenv`` is extremely useful for learning about the environment -software builds in. Often, such systems disallow login, but do allow -access to log files. Handily, ``procenv`` runs a battery of tests on -build including running itself so that the build environment gets -captured in the builds logs themselves. Select a link below and drill -down to the build log to see the ``procenv`` output: - -Semaphore-CI -~~~~~~~~~~~~ - -* https://semaphoreci.com/jamesodhunt/procenv - (Click "Passed", "Job #", then "``make check``" to see output). - -Travis-CI -~~~~~~~~~ - -* https://travis-ci.org/jamesodhunt/procenv - -Open Build Service (OBS) -~~~~~~~~~~~~~~~~~~~~~~~~ - -* https://build.opensuse.org/package/show/home:jamesodhunt:procenv/procenv - -If you distro does not yet provide a ``procenv`` package, binary -packages for RHEL, Fedora, Centos, SLES, and Arch Linux are available -from here: - -* https://software.opensuse.org/download.html?project=home%3Ajamesodhunt%3Aprocenv&package=procenv - -Click on your icon for your distro and follow the instructions. - -Note that these packages are "bleeding edge" (generated directly from the github repository). - -Ubuntu -~~~~~~ - -build environment -................. - -Click the "twisty" triangle to the left of the release number under a -release name, then click one of the build links (like "``amd64``)": - -* https://launchpad.net/ubuntu/+source/procenv - -PPA environment -............... - -https://code.launchpad.net/~jamesodhunt/+recipe/procenv-daily - -Ubuntu Autopkgtest (DEP-8) environment -...................................... - -* http://autopkgtest.ubuntu.com/packages/p/procenv/ - -* Old Jenkins system - - * https://jenkins.qa.ubuntu.com/view/Wily/view/AutoPkgTest/job/wily-adt-procenv/ - - * https://jenkins.qa.ubuntu.com/view/Vivid/view/AutoPkgTest/job/vivid-adt-procenv/ - - * https://jenkins.qa.ubuntu.com/view/Utopic/view/AutoPkgTest/job/utopic-adt-procenv/ - - * https://jenkins.qa.ubuntu.com/view/Trusty/view/AutoPkgTest/job/trusty-adt-procenv/ - -The ``sbuild`` tool environment -............................... - -``procenv`` gets run from within sbuild via a DEP-8 test: - -* http://autopkgtest.ubuntu.com/packages/s/sbuild/ - -* Old Jenkins system - - * https://jenkins.qa.ubuntu.com/view/Wily/view/AutoPkgTest/job/wily-adt-sbuild/ - -The ``pbuilder`` tool environment -................................. - -``procenv`` gets run from within pbuilder via a DEP-8 test: - -* http://autopkgtest.ubuntu.com/packages/p/pbuilder/ - -* Old Jenkins system - - * https://jenkins.qa.ubuntu.com/view/Wily/view/AutoPkgTest/job/wily-adt-pbuilder/ - -Debian -~~~~~~ - -buildd (and ports buildd) environment -..................................... - -* https://buildd.debian.org/status/package.php?p=procenv&suite=sid - -Debian autopkgtest (DEP-8) environment -...................................... - -* http://ci.debian.net/#package/procenv - -Fedora -~~~~~~ - -* https://src.fedoraproject.org/rpms/procenv/ - -FreeBSD -~~~~~~~ - -Logs used to be available, but sadly it appears pointyhat.freebsd.com has -been taken offline (any replacement?) - -Gentoo -~~~~~~ - -* https://packages.gentoo.org/packages/sys-process/procenv/ - -Porting -------- - -Can you help port ``procenv`` to other platforms (AIX, HP-UX, Solaris, -...)? If so, please get in contact. - -References ----------- - -See http://ifdeflinux.blogspot.com/2012/10/procenv-and-process-environment.html - - -Author ------- - -``procenv`` was written by James Hunt <[email protected]>. - -Home Page ---------- - -* https://github.com/jamesodhunt/procenv diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/TODO new/procenv-0.55/TODO --- old/procenv-0.54/TODO 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/TODO 2021-04-08 22:24:31.000000000 +0200 @@ -1,5 +1,7 @@ # TODO +- Audit `die()` calls. +- Consider changing `UNKNOWN_STR` to show `errno` value (such as `unknown(EPERM)`). - merge --clocks into --time. - call clock_getime() for all clock types and show time in 3 formats for each! - debian license file has incorrect email address. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/configure new/procenv-0.55/configure --- old/procenv-0.54/configure 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/configure 2021-04-08 22:24:31.000000000 +0200 @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for procenv 0.54. +# Generated by GNU Autoconf 2.69 for procenv 0.55. # # Report bugs to <[email protected]>. # @@ -582,8 +582,8 @@ # Identity of this package. PACKAGE_NAME='procenv' PACKAGE_TARNAME='procenv' -PACKAGE_VERSION='0.54' -PACKAGE_STRING='procenv 0.54' +PACKAGE_VERSION='0.55' +PACKAGE_STRING='procenv 0.55' PACKAGE_BUGREPORT='[email protected]' PACKAGE_URL='https://github.com/jamesodhunt/procenv' @@ -1325,7 +1325,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures procenv 0.54 to adapt to many kinds of systems. +\`configure' configures procenv 0.55 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1396,7 +1396,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of procenv 0.54:";; + short | recursive ) echo "Configuration of procenv 0.55:";; esac cat <<\_ACEOF @@ -1513,7 +1513,7 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -procenv configure 0.54 +procenv configure 0.55 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -1938,7 +1938,7 @@ This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by procenv $as_me 0.54, which was +It was created by procenv $as_me 0.55, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -2323,7 +2323,7 @@ -PROCENV_VERSION=0.54 +PROCENV_VERSION=0.55 # Expand $ac_aux_dir to an absolute path. @@ -6071,7 +6071,7 @@ # Define the identity of the package. PACKAGE='procenv' - VERSION='0.54' + VERSION='0.55' cat >>confdefs.h <<_ACEOF @@ -6471,7 +6471,7 @@ *linux*) procenv_platform=linux;; # XXX: must come *AFTER* linux test - *hurd*|*-gnu) procenv_platform=hurd;; + *hurd*|*gnu*) procenv_platform=hurd;; *minix*) procenv_platform=minix;; *netbsd*) procenv_platform=netbsd;; @@ -7155,7 +7155,7 @@ # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by procenv $as_me 0.54, which was +This file was extended by procenv $as_me 0.55, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -7222,7 +7222,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -procenv config.status 0.54 +procenv config.status 0.55 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/configure.ac new/procenv-0.55/configure.ac --- old/procenv-0.54/configure.ac 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/configure.ac 2021-04-08 22:24:31.000000000 +0200 @@ -1,7 +1,7 @@ # -*- Autoconf -*- # Process this file with autoconf to produce a configure script. -m4_define([procenv_version], [0.54]) +m4_define([procenv_version], [0.55]) AC_INIT(procenv,[procenv_version],[[email protected]],,[https://github.com/jamesodhunt/procenv]) @@ -173,7 +173,7 @@ *linux*) procenv_platform=linux;; # XXX: must come *AFTER* linux test - *hurd*|*-gnu) procenv_platform=hurd;; + *hurd*|*gnu*) procenv_platform=hurd;; *minix*) procenv_platform=minix;; *netbsd*) procenv_platform=netbsd;; diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/procenv.spec new/procenv-0.55/procenv.spec --- old/procenv-0.54/procenv.spec 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/procenv.spec 2021-04-08 22:24:31.000000000 +0200 @@ -1,12 +1,12 @@ Name: procenv -Version: 0.54 +Version: 0.55 Release: 1%{?dist} Summary: Utility to show process environment Group: Applications/System License: GPLv3+ URL: https://github.com/jamesodhunt/procenv -Source0: https://github.com/jamesodhunt/procenv/archive/0.54.tar.gz +Source0: https://github.com/jamesodhunt/procenv/archive/0.55.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # fixme: should be autoconf >= 2.68, but Fedora packages or alien'ed dpkg diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/src/platform/README.md new/procenv-0.55/src/platform/README.md --- old/procenv-0.54/src/platform/README.md 1970-01-01 01:00:00.000000000 +0100 +++ new/procenv-0.55/src/platform/README.md 2021-04-08 22:24:31.000000000 +0200 @@ -0,0 +1,68 @@ +# `procenv` drivers + +## Overview + +`procenv` now supports platform drivers. These are simply translation +units that are compiled only for a particular platform. They were +introduced to combat the "`#ifdef` hell" of previous releases. + +## Build Strategy + +### `configure.ac` + +Used to identify the platform the build is run on, exporting +`PROCENV_PLATFORM_<name>` and `$procenv_platform"` to `src/Makefile.am`. + +### `src/Makefile.am` + +- Defines `PROCENV_PLATFORM_<name>` as a symbol to the compiler. + +- Adds platform driver (platform-specific) source files to the list of + files to be built. + +To simplify the include policy, all platform-specific headers are added to the +appropriate section in `platform-headers.h`. + +Additionally, one other object get built on *all* platforms: + +- `platform-generic` + + Provides generic Unix/Linux implementations of particular methods. + + Drivers are free to reference the functions from this translation unit. + See below for details. + +The build uses some magic options so that although all possible +implementations get built, *only those symbols actually referenced become part +of the final binary* (meaning you don't end up with lots of generic functions +linked into your binary if your driver doesn't use them :-) + +## Implementing a new driver + +- `configure.ac`: + - Update the `$target_to_consider` case logic for your platform. + - Add an `AM_CONDITIONAL(PROCENV_PLATFORM_*, ...)`. + +- Create `src/platform/${platform}/platform.c` with an implementation of + the global "`struct procenv_ops platform_ops`". + + For each `struct procenv_ops` function pointer, + + - If it doesn't make sense to define a particular function for the + platform, simply omit specifying a function pointer. + + (Note that you could set the function pointer to `NULL`, but that + isn't necessary given that the `platform_ops` symbol is global, and + thus effectively all pointers not specified are already implicitly set + to `NULL`). + + - If one of the generic implementations is suitable, set the function + pointer to the corresponding `*_generic()` function in + `platform-generic.c`. + + - If neither of the above options is suitable, define a static + implementation in your `platform.c` (with the function name + `*_<platform>`) file and set the corresponding function pointer to + that function. + +- Create `src/platform/${platform}/platform-${platform}.h`. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/src/platform/README.rst new/procenv-0.55/src/platform/README.rst --- old/procenv-0.54/src/platform/README.rst 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/src/platform/README.rst 1970-01-01 01:00:00.000000000 +0100 @@ -1,79 +0,0 @@ -=============== -procenv drivers -=============== - -.. contents:: -.. sectnum:: - -Overview --------- - -``procenv`` now supports platform drivers. These are simply translation -units that are compiled only for a particular platform. They were -introduced to combat the "``#ifdef`` hell" of previous releases. - -Build Stategy -------------- - -``configure.ac`` -~~~~~~~~~~~~~~~~ - -Used to identify the platform the build is run on, exporting -"``PROCENV_PLATFORM_<name>``" and ``$procenv_platform"`` to -"``src/Makefile.am``". - -``src/Makefile.am`` -~~~~~~~~~~~~~~~~~~~ - -- Defines "``PROCENV_PLATFORM_<name>``" as a symbol to the compiler. - -- Adds platform driver (platform-specific) source files to the list of - files to be built. - -To simplify the include policy, all platform-specific headers are added -to the appropriate section in ``platform-headers.h``. - -Additionally, one other object get built on *all* platforms: - -- ``platform-generic`` - - Provides generic Unix/Linux implementations of particular methods. - -Drivers are free to reference the functions from this translation unit. -See below for details. - -The build uses some magic options so that although all possible -implementations get built, *only those symbols actually referenced -become part of the final binary* (meaning you don't end up with lots of -generic functions linked into your binary if your driver doesn't use them :-) - -Implementing a new driver -------------------------- - -- ``configure.ac``: - - Update the ``$target_to_consider`` case logic for your platform. - - Add an ``AM_CONDITIONAL(PROCENV_PLATFORM_*, ...)``. - -- Create ``src/platform/${platform}/platform.c`` with an implementation of - the global "``struct procenv_ops platform_ops``". - - For each ``struct procenv_ops`` function pointer, - - - If it doesn't make sense to define a particular function for the - platform, simply omit specifying a function pointer. - - (Note that you could set the function pointer to ``NULL``, but that - isn't necessary given that the ``platform_ops`` symbol is global, and - thus effectively all pointers not specified are already implicitly set - to ``NULL``). - - - If one of the generic implementations is suitable, set the function - pointer to the corresponding ``*_generic()`` function in - ``platform-generic.c``. - - - If neither of the above options is suitable, define a static - implementation in your ``platform.c`` (with the function name - ``*_<platform>``) file and set the corresponding function pointer to - that function. - -- Create ``src/platform/${platform}/platform-${platform}.h``. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/src/platform/platform-generic.c new/procenv-0.55/src/platform/platform-generic.c --- old/procenv-0.54/src/platform/platform-generic.c 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/src/platform/platform-generic.c 2021-04-08 22:24:31.000000000 +0200 @@ -542,6 +542,8 @@ #define PROCENV_MB (1024*PROCENV_KB) #define PROCENV_GB (1024*PROCENV_MB) +#if !defined (PROCENV_PLATFORM_HURD) + static void show_human_size_entry (size_t value) @@ -576,6 +578,17 @@ section_close (); \ } +#endif /* !PROCENV_PLATFORM_HURD */ + +#if defined (PROCENV_PLATFORM_HURD) + +/* Although hurd has the "sys/sysinfo.h" header, it doesn't contain a + * prototype for sysinfo(2) since the kernel doesn't provide this system call. + */ +void show_memory_generic (void) {} + +#else /* !PROCENV_PLATFORM_HURD */ + void show_memory_generic (void) { @@ -620,6 +633,8 @@ /*------------------------------*/ } +#endif /* PROCENV_PLATFORM_HURD */ + #endif /* PROCENV_PLATFORM_LINUX || PROCENV_PLATFORM_FREEBSD || PROCENV_PLATFORM_HURD */ #if defined (PROCENV_PLATFORM_LINUX) || \ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/src/platform-headers.h new/procenv-0.55/src/platform-headers.h --- old/procenv-0.54/src/platform-headers.h 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/src/platform-headers.h 2021-04-08 22:24:31.000000000 +0200 @@ -261,6 +261,7 @@ #include <sys/statvfs.h> #include <net/if.h> #include <link.h> +#include <sys/sysmacros.h> #if defined (HAVE_SYS_CAPABILITY_H) #include <sys/capability.h> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/src/procenv.c new/procenv-0.55/src/procenv.c --- old/procenv-0.54/src/procenv.c 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/src/procenv.c 2021-04-08 22:24:31.000000000 +0200 @@ -26,7 +26,7 @@ *-------------------------------------------------------------------- */ -#include <procenv.h> +#include "procenv.h" /** * doc: diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/procenv-0.54/src/pstring.c new/procenv-0.55/src/pstring.c --- old/procenv-0.54/src/pstring.c 2021-03-15 23:11:38.000000000 +0100 +++ new/procenv-0.55/src/pstring.c 2021-04-08 22:24:31.000000000 +0200 @@ -32,7 +32,11 @@ assert (str); - len = mbsrtowcs (NULL, &str, 0, NULL); + mbstate_t ps; + + memset(&ps, 0, sizeof (ps)); + + len = mbsrtowcs (NULL, &str, 0, &ps); if (len <= 0) return NULL; @@ -45,7 +49,9 @@ p = str; - if (mbsrtowcs (wstr, &p, len, NULL) != len) + memset(&ps, 0, sizeof (ps)); + + if (mbsrtowcs (wstr, &p, len, &ps) != len) goto error; /* ensure it's terminated */
