<86>Jan 31 01:33:12 userdel[3724621]: delete user 'rooter' <86>Jan 31 01:33:12 userdel[3724621]: removed group 'rooter' owned by 'rooter' <86>Jan 31 01:33:12 groupadd[3724656]: group added to /etc/group: name=rooter, GID=687 <86>Jan 31 01:33:12 groupadd[3724656]: group added to /etc/gshadow: name=rooter <86>Jan 31 01:33:12 groupadd[3724656]: new group: name=rooter, GID=687 <86>Jan 31 01:33:12 useradd[3724672]: new user: name=rooter, UID=687, GID=687, home=/root, shell=/bin/bash <86>Jan 31 01:33:12 userdel[3724695]: delete user 'builder' <86>Jan 31 01:33:12 userdel[3724695]: removed group 'builder' owned by 'builder' <86>Jan 31 01:33:12 userdel[3724695]: removed shadow group 'builder' owned by 'builder' <86>Jan 31 01:33:12 groupadd[3724714]: group added to /etc/group: name=builder, GID=688 <86>Jan 31 01:33:12 groupadd[3724714]: group added to /etc/gshadow: name=builder <86>Jan 31 01:33:12 groupadd[3724714]: new group: name=builder, GID=688 <86>Jan 31 01:33:12 useradd[3724731]: new user: name=builder, UID=688, GID=688, home=/usr/src, shell=/bin/bash warning: user mike does not exist - using root warning: group mike does not exist - using root warning: user mike does not exist - using root warning: group mike does not exist - using root warning: user mike does not exist - using root warning: group mike does not exist - using root warning: user mike does not exist - using root warning: group mike does not exist - using root <13>Jan 31 01:33:14 rpmi: xorg-proto-devel-2018.4-alt3 1527685079 installed <13>Jan 31 01:33:14 rpmi: libICE-1.0.9-alt1 1409902719 installed <13>Jan 31 01:33:14 rpmi: libglvnd-7:1.3.1-alt0.p9 p9+251991.160.19.1 1590834868 installed <13>Jan 31 01:33:14 rpmi: libSM-1.2.3-alt1 sisyphus+226734.100.2.1 1554586157 installed <13>Jan 31 01:33:14 rpmi: libexpat-2.2.10-alt1 p9+261554.100.1.1 1605103332 installed <13>Jan 31 01:33:14 rpmi: libXau-1.0.9-alt1 sisyphus+223149.200.2.1 1551268156 installed <13>Jan 31 01:33:14 rpmi: libwayland-server-1.18.0-alt1 p9+260591.100.12.1 1606212847 installed <13>Jan 31 01:33:14 rpmi: libXau-devel-1.0.9-alt1 sisyphus+223149.200.2.1 1551268156 installed <13>Jan 31 01:33:14 rpmi: libOpenGL-7:1.3.1-alt0.p9 p9+251991.160.19.1 1590834868 installed <13>Jan 31 01:33:14 rpmi: libICE-devel-1.0.9-alt1 1409902719 installed <13>Jan 31 01:33:14 rpmi: libSM-devel-1.2.3-alt1 sisyphus+226734.100.2.1 1554586157 installed <13>Jan 31 01:33:15 rpmi: libjpeg-2:2.0.2-alt1 sisyphus+226996.100.1.1 1554902884 installed <13>Jan 31 01:33:15 rpmi: libxshmfence-1.3-alt1 sisyphus+223149.1000.2.1 1551268594 installed <13>Jan 31 01:33:15 rpmi: libX11-locales-3:1.6.7-alt2 p9+258208.100.1.1 1600333167 installed <13>Jan 31 01:33:15 rpmi: libXdmcp-1.1.3-alt1 sisyphus+225206.600.1.2 1552949347 installed <13>Jan 31 01:33:15 rpmi: libxcb-1.13.1-alt1 sisyphus+226527.100.2.2 1554593799 installed <13>Jan 31 01:33:15 rpmi: libX11-3:1.6.7-alt2 p9+258208.100.1.1 1600333167 installed <13>Jan 31 01:33:15 rpmi: libXext-1.3.4-alt1 sisyphus+225206.700.1.2 1552949422 installed <13>Jan 31 01:33:15 rpmi: libXxf86vm-1.1.4-alt2 1527672159 installed <13>Jan 31 01:33:15 rpmi: libXi-1.7.9-alt2 sisyphus+226377.100.1.2 1554260258 installed <13>Jan 31 01:33:15 rpmi: libXfixes-5.0.3-alt1 sisyphus+226736.100.2.2 1554614842 installed <13>Jan 31 01:33:15 rpmi: libXt-1.1.4-alt1 1369984716 installed <13>Jan 31 01:33:15 rpmi: libXmu-1.1.3-alt1 sisyphus+225206.1200.1.2 1552949629 installed <13>Jan 31 01:33:15 rpmi: libXdamage-1.1.5-alt1 sisyphus+225206.500.1.2 1552949282 installed <13>Jan 31 01:33:15 rpmi: libXrender-0.9.10-alt1 p9+261891.200.2.1 1606149106 installed <13>Jan 31 01:33:15 rpmi: libXrandr-1.5.2-alt1 sisyphus+225206.1300.1.2 1552949698 installed <13>Jan 31 01:33:16 rpmi: libxcb-devel-1.13.1-alt1 sisyphus+226527.100.2.2 1554593799 installed <13>Jan 31 01:33:16 rpmi: libX11-devel-3:1.6.7-alt2 p9+258208.100.1.1 1600333167 installed <13>Jan 31 01:33:16 rpmi: libXext-devel-1.3.4-alt1 sisyphus+225206.700.1.2 1552949422 installed <13>Jan 31 01:33:16 rpmi: libXfixes-devel-5.0.3-alt1 sisyphus+226736.100.2.2 1554614842 installed <13>Jan 31 01:33:16 rpmi: libXt-devel-1.1.4-alt1 1369984716 installed <13>Jan 31 01:33:16 rpmi: libwayland-client-1.18.0-alt1 p9+260591.100.12.1 1606212847 installed <13>Jan 31 01:33:16 rpmi: libpciaccess-1:0.14-alt1 1528969624 installed <13>Jan 31 01:33:16 rpmi: libdrm-1:2.4.102-alt1 p9+252863.100.1.1 1591372623 installed <13>Jan 31 01:33:16 rpmi: libGLX-mesa-4:20.1.8-alt1 p9+260591.240.12.1 1606213200 installed <13>Jan 31 01:33:16 rpmi: libGLX-7:1.3.1-alt0.p9 p9+251991.160.19.1 1590834868 installed <13>Jan 31 01:33:16 rpmi: libGL-7:1.3.1-alt0.p9 p9+251991.160.19.1 1590834868 installed <13>Jan 31 01:33:16 rpmi: libGLU-4:9.0.1-alt1 p9+251991.3000.19.1 1590835932 installed <13>Jan 31 01:33:16 rpmi: libfreeglut-3.0.0-alt3 sisyphus+226742.100.2.3 1554619772 installed <13>Jan 31 01:33:16 rpmi: libgbm-4:20.1.8-alt1 p9+260591.240.12.1 1606213200 installed <13>Jan 31 01:33:16 rpmi: libEGL-mesa-4:20.1.8-alt1 p9+260591.240.12.1 1606213200 installed <13>Jan 31 01:33:16 rpmi: libEGL-7:1.3.1-alt0.p9 p9+251991.160.19.1 1590834868 installed <13>Jan 31 01:33:16 rpmi: libglvnd-devel-7:1.3.1-alt0.p9 p9+251991.160.19.1 1590834868 installed <13>Jan 31 01:33:16 rpmi: libGL-devel-4:20.1.8-alt1 p9+260591.240.12.1 1606213200 installed <13>Jan 31 01:33:16 rpmi: libGLU-devel-4:9.0.1-alt1 p9+251991.3000.19.1 1590835932 installed <13>Jan 31 01:33:16 rpmi: libfreeglut-devel-3.0.0-alt3 sisyphus+226742.100.2.3 1554619772 installed <13>Jan 31 01:33:16 rpmi: libXmu-devel-1.1.3-alt1 sisyphus+225206.1200.1.2 1552949629 installed <13>Jan 31 01:33:16 rpmi: libXi-devel-1.7.9-alt2 sisyphus+226377.100.1.2 1554260258 installed <13>Jan 31 01:33:16 rpmi: libjpeg-devel-2:2.0.2-alt1 sisyphus+226996.100.1.1 1554902884 installed Building target platforms: x86_64 Building for target x86_64 Wrote: /usr/src/in/nosrpm/pyro-1.5-alt7.nosrc.rpm Installing pyro-1.5-alt7.src.rpm Building target platforms: x86_64 Building for target x86_64 Executing(%prep): /bin/sh -e /usr/src/tmp/rpm-tmp.45185 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + rm -rf pyro-1.5 + echo 'Source #0 (pyro-1.5.tgz):' Source #0 (pyro-1.5.tgz): + /bin/gzip -dc /usr/src/RPM/SOURCES/pyro-1.5.tgz + /bin/tar -xf - + cd pyro-1.5 + /bin/chmod -c -Rf u+rwX,go-w . + echo 'Patch #0 (pyro-nomesa.patch.bz2):' Patch #0 (pyro-nomesa.patch.bz2): + /bin/bzip2 -dc /usr/src/RPM/SOURCES/pyro-nomesa.patch.bz2 + /usr/bin/patch -p1 patching file Makefile + echo 'Patch #1 (pyro-1.5-alt-makefile.patch):' Patch #1 (pyro-1.5-alt-makefile.patch): + /usr/bin/patch -p1 patching file Makefile + sed -i s,-O6,-O3, Makefile + exit 0 Executing(%build): /bin/sh -e /usr/src/tmp/rpm-tmp.45185 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd pyro-1.5 + make -j8 make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -Wall -O3 -I/usr/src/Mesa-3.0/include -ffast-math -fPIC -fomit-frame-pointer -funroll-all-loops -DAUXDIR=\"/usr/share/pyro\" -c -o particles.o particles.c make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -Wall -O3 -I/usr/src/Mesa-3.0/include -ffast-math -fPIC -fomit-frame-pointer -funroll-all-loops -DAUXDIR=\"/usr/share/pyro\" -c -o fireworks.o fireworks.c make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -Wall -O3 -I/usr/src/Mesa-3.0/include -ffast-math -fPIC -fomit-frame-pointer -funroll-all-loops -DAUXDIR=\"/usr/share/pyro\" -c -o colormod.o colormod.c make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -Wall -O3 -I/usr/src/Mesa-3.0/include -ffast-math -fPIC -fomit-frame-pointer -funroll-all-loops -DAUXDIR=\"/usr/share/pyro\" -c -o posmod.o posmod.c make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -Wall -O3 -I/usr/src/Mesa-3.0/include -ffast-math -fPIC -fomit-frame-pointer -funroll-all-loops -DAUXDIR=\"/usr/share/pyro\" -c -o jpeg.o jpeg.c jpeg.c: In function 'read_JPEG_file': jpeg.c:74:5: warning: implicit declaration of function 'memcpy' [-Wimplicit-function-declaration] memcpy(image_buffer+cinfo.image_width*3*cont,buffer[0],row_stride); ^~~~~~ jpeg.c:74:5: warning: incompatible implicit declaration of built-in function 'memcpy' jpeg.c:74:5: note: include '' or provide a declaration of 'memcpy' jpeg.c:12:1: +#include jpeg.c:74:5: memcpy(image_buffer+cinfo.image_width*3*cont,buffer[0],row_stride); ^~~~~~ make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -Wall -O3 -I/usr/src/Mesa-3.0/include -ffast-math -fPIC -fomit-frame-pointer -funroll-all-loops -DAUXDIR=\"/usr/share/pyro\" -c -o parser.o parser.c /usr/lib/bison.simple: In function 'yyparse': /usr/lib/bison.simple:516:12: warning: 'yyval.val' may be used uninitialized in this function [-Wmaybe-uninitialized] /usr/lib/bison.simple:254:11: note: 'yyval.val' was declared here make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -Wall -O3 -I/usr/src/Mesa-3.0/include -ffast-math -fPIC -fomit-frame-pointer -funroll-all-loops -DAUXDIR=\"/usr/share/pyro\" -c -o pyro.o pyro.c pyro.c: In function 'printstring': pyro.c:210:12: warning: implicit declaration of function 'strlen' [-Wimplicit-function-declaration] len=(int)strlen(string); ^~~~~~ pyro.c:210:12: warning: incompatible implicit declaration of built-in function 'strlen' pyro.c:210:12: note: include '' or provide a declaration of 'strlen' pyro.c:22:1: +#include pyro.c:210:12: len=(int)strlen(string); ^~~~~~ pyro.c: In function 'DisplayScene': pyro.c:388:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if(drawtex) glTexCoord2f(0.0,0.0); glVertex3f(-100,GRNDLVL,-100); ^~ pyro.c:388:38: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' if(drawtex) glTexCoord2f(0.0,0.0); glVertex3f(-100,GRNDLVL,-100); ^~~~~~~~~~ pyro.c:389:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if(drawtex) glTexCoord2f(40.0,0.0); glVertex3f(100,GRNDLVL,-100); ^~ pyro.c:389:39: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' if(drawtex) glTexCoord2f(40.0,0.0); glVertex3f(100,GRNDLVL,-100); ^~~~~~~~~~ pyro.c:390:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if(drawtex) glTexCoord2f(40.0,40.0); glVertex3f(100,GRNDLVL,100); ^~ pyro.c:390:40: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' if(drawtex) glTexCoord2f(40.0,40.0); glVertex3f(100,GRNDLVL,100); ^~~~~~~~~~ pyro.c:391:3: warning: this 'if' clause does not guard... [-Wmisleading-indentation] if(drawtex) glTexCoord2f(0.0,40.0); glVertex3f(-100,GRNDLVL,100); ^~ pyro.c:391:39: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if' if(drawtex) glTexCoord2f(0.0,40.0); glVertex3f(-100,GRNDLVL,100); ^~~~~~~~~~ pyro.c: In function 'ParseArgs': pyro.c:796:7: warning: implicit declaration of function 'strcpy' [-Wimplicit-function-declaration] strcpy(dispfname,args[++num]); ^~~~~~ pyro.c:796:7: warning: incompatible implicit declaration of built-in function 'strcpy' pyro.c:796:7: note: include '' or provide a declaration of 'strcpy' make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' gcc -o pyro pyro.o colormod.o posmod.o particles.o fireworks.o jpeg.o parser.o -lX11 -L/usr/X11R6/lib -L/usr/src/Mesa-3.0/lib -ljpeg -lm -lXmu -lXi -lXext -lGL -lGLU -lglut make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' + exit 0 Executing(%install): /bin/sh -e /usr/src/tmp/rpm-tmp.99173 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + /bin/chmod -Rf u+rwX -- /usr/src/tmp/pyro-buildroot + : + /bin/rm -rf -- /usr/src/tmp/pyro-buildroot + cd pyro-1.5 + /usr/bin/make 'INSTALL=/bin/install -p' prefix=/usr/src/tmp/pyro-buildroot/usr exec_prefix=/usr/src/tmp/pyro-buildroot/usr bindir=/usr/src/tmp/pyro-buildroot/usr/bin sbindir=/usr/src/tmp/pyro-buildroot/usr/sbin sysconfdir=/usr/src/tmp/pyro-buildroot/etc datadir=/usr/src/tmp/pyro-buildroot/usr/share includedir=/usr/src/tmp/pyro-buildroot/usr/include libdir=/usr/src/tmp/pyro-buildroot/usr/lib64 libexecdir=/usr/src/tmp/pyro-buildroot/usr/lib localstatedir=/usr/src/tmp/pyro-buildroot/var/lib sharedstatedir=/usr/src/tmp/pyro-buildroot/var/lib mandir=/usr/src/tmp/pyro-buildroot/usr/share/man infodir=/usr/src/tmp/pyro-buildroot/usr/share/info install PREFIX=/usr/src/tmp/pyro-buildroot/usr make: Entering directory '/usr/src/RPM/BUILD/pyro-1.5' mkdir -p /usr/src/tmp/pyro-buildroot/usr/bin cp pyro /usr/src/tmp/pyro-buildroot/usr/bin mkdir -p /usr/src/tmp/pyro-buildroot/usr/share/pyro cp water.jpg /usr/src/tmp/pyro-buildroot/usr/share/pyro cp pyro.dsp /usr/src/tmp/pyro-buildroot/usr/share/pyro make: Leaving directory '/usr/src/RPM/BUILD/pyro-1.5' + /usr/lib/rpm/brp-alt Cleaning files in /usr/src/tmp/pyro-buildroot (auto) Verifying and fixing files in /usr/src/tmp/pyro-buildroot (binconfig,pkgconfig,libtool,desktop) Checking contents of files in /usr/src/tmp/pyro-buildroot/ (default) Compressing files in /usr/src/tmp/pyro-buildroot (auto) Verifying ELF objects in /usr/src/tmp/pyro-buildroot (arch=normal,fhs=normal,lfs=relaxed,lint=relaxed,rpath=normal,stack=normal,textrel=normal,unresolved=normal) Hardlinking identical .pyc and .pyo files Processing files: pyro-1.5-alt7 Executing(%doc): /bin/sh -e /usr/src/tmp/rpm-tmp.99173 + umask 022 + /bin/mkdir -p /usr/src/RPM/BUILD + cd /usr/src/RPM/BUILD + cd pyro-1.5 + DOCDIR=/usr/src/tmp/pyro-buildroot/usr/share/doc/pyro-1.5 + export DOCDIR + rm -rf /usr/src/tmp/pyro-buildroot/usr/share/doc/pyro-1.5 + /bin/mkdir -p /usr/src/tmp/pyro-buildroot/usr/share/doc/pyro-1.5 + cp -prL README CHANGES /usr/src/tmp/pyro-buildroot/usr/share/doc/pyro-1.5 + chmod -R go-w /usr/src/tmp/pyro-buildroot/usr/share/doc/pyro-1.5 + chmod -R a+rX /usr/src/tmp/pyro-buildroot/usr/share/doc/pyro-1.5 + exit 0 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.1kXZbf find-provides: running scripts (debuginfo,lib,pam,perl,pkgconfig,python,shell) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.N2C6UE find-requires: running scripts (cpp,debuginfo,files,lib,pam,perl,pkgconfig,pkgconfiglib,python,rpmlib,shebang,shell,static,symlinks,systemd-services) Requires: /lib64/ld-linux-x86-64.so.2, libGL.so.1()(64bit) >= set:pkdsnSjvH4wkDIIC3hNkAsRIvfyHAFQPAtq6v0pJkbCZeFUBJZJzqOWZle22EyH0gQHwlEswlmWlKrNTX1xRKBdyO6ZqraX96, libGLU.so.1()(64bit) >= set:jiz37, libc.so.6(GLIBC_2.11)(64bit), libc.so.6(GLIBC_2.14)(64bit), libc.so.6(GLIBC_2.2.5)(64bit), libc.so.6(GLIBC_2.3)(64bit), libc.so.6(GLIBC_2.3.4)(64bit), libc.so.6(GLIBC_2.4)(64bit), libc.so.6(GLIBC_2.7)(64bit), libglut.so.3()(64bit) >= set:lgyd50T3etqAJSJt47IZfc3Bj2YUw81RvWPvZsWckAiopPjQ2, libjpeg.so.62()(64bit) >= set:jfvZgUYgm1WcNFYdT6Zpru, libm.so.6(GLIBC_2.15)(64bit), libm.so.6(GLIBC_2.2.5)(64bit), rtld(GNU_HASH) Requires(rpmlib): rpmlib(SetVersions) Finding debuginfo files (using /usr/lib/rpm/find-debuginfo-files) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.JfiqL7 Creating pyro-debuginfo package Processing files: pyro-debuginfo-1.5-alt7 Finding Provides (using /usr/lib/rpm/find-provides) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.NSuGID find-provides: running scripts (debuginfo) Finding Requires (using /usr/lib/rpm/find-requires) Executing: /bin/sh -e /usr/src/tmp/rpm-tmp.fAx3Lc find-requires: running scripts (debuginfo) Requires: pyro = 1.5-alt7, /usr/lib/debug/lib64/ld-linux-x86-64.so.2.debug, debug64(libGL.so.1), debug64(libGLU.so.1), debug64(libc.so.6), debug64(libglut.so.3), debug64(libjpeg.so.62), debug64(libm.so.6) Wrote: /usr/src/RPM/RPMS/x86_64/pyro-1.5-alt7.x86_64.rpm Wrote: /usr/src/RPM/RPMS/x86_64/pyro-debuginfo-1.5-alt7.x86_64.rpm 2.73user 0.65system 0:07.24elapsed 46%CPU (0avgtext+0avgdata 44716maxresident)k 0inputs+0outputs (0major+264917minor)pagefaults 0swaps 7.72user 3.48system 0:15.13elapsed 74%CPU (0avgtext+0avgdata 117808maxresident)k 32inputs+0outputs (0major+577368minor)pagefaults 0swaps --- pyro-1.5-alt7.x86_64.rpm.repo 2017-02-22 18:19:08.000000000 +0000 +++ pyro-1.5-alt7.x86_64.rpm.hasher 2021-01-31 01:33:26.351229689 +0000 @@ -7,3 +7,3 @@ Requires: /lib64/ld-linux-x86-64.so.2 -Requires: libGL.so.1()(64bit) >= set:ojnoEXx7Gpk7tBa18R9HRs8kc59ndZH7VapCuCSFp2ekZiTRcy2z5cXZcTpWYoQZKNnGWqnRLs22ENl0RkwEINnTkSj4 +Requires: libGL.so.1()(64bit) >= set:pkdsnSjvH4wkDIIC3hNkAsRIvfyHAFQPAtq6v0pJkbCZeFUBJZJzqOWZle22EyH0gQHwlEswlmWlKrNTX1xRKBdyO6ZqraX96 Requires: rpmlib(SetVersions) @@ -17,3 +17,3 @@ Requires: libc.so.6(GLIBC_2.7)(64bit) -Requires: libglut.so.3()(64bit) >= set:mh0982iZxGBgAwBSZIghaxlZ9xX1ftabJp47SZvOGarUUVfc4B9q1 +Requires: libglut.so.3()(64bit) >= set:lgyd50T3etqAJSJt47IZfc3Bj2YUw81RvWPvZsWckAiopPjQ2 Requires: libjpeg.so.62()(64bit) >= set:jfvZgUYgm1WcNFYdT6Zpru