[Debian GNUstep maintainers] Bug#893097: lynkeos.app: FTBFS on many architectures - PAGE_SIZE undeclared

James Cowgill jcowgill at debian.org
Fri Mar 16 13:53:04 UTC 2018


Source: lynkeos.app
Version: 2.10+dfsg1-1
Severity: serious
Tags: sid buster

Hi,

lynkeos.app FTBFS on many architectures (all except for x86, s390x and
alpha) with the error:
> /<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep/../Sources/MyCachePrefs.m: In function '-[MyCachePrefs(Private) initPrefs]':
> /<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep/../Sources/MyCachePrefs.m:60:33: error: 'PAGE_SIZE' undeclared (first use in this function); did you mean '_GSC_SIZE'?
>     memSize = get_phys_pages() * PAGE_SIZE;
>                                  ^~~~~~~~~
>                                  _GSC_SIZE
> /<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep/../Sources/MyCachePrefs.m:60:33: note: each undeclared identifier is reported only once for each function it appears in
> make[5]: *** [/usr/share/GNUstep/Makefiles/rules.make:479: obj/Lynkeos.obj/MyCachePrefs.m.o] Error 1
> make[5]: *** Waiting for unfinished jobs....
> gcc /<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep/../Sources/LynkeosStandardImageBuffer.m -c \
>       -MMD -MP -Wdate-time -D_FORTIFY_SOURCE=2 -I. -I.. -I/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep.. -I/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep/../Sources -I/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep/../ThreadConnectionSources -I/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1/GNUstep/../ThirdPartySources/SMDoubleSlider -DNO_FRAMEWORK_CHECK=1 -DGNUSTEP -DGNUSTEP_BASE_LIBRARY=1 -DGNU_GUI_LIBRARY=1 -DGNU_RUNTIME=1 -DGNUSTEP_BASE_LIBRARY=1 -fno-strict-aliasing -fexceptions -fobjc-exceptions -D_NATIVE_OBJC_EXCEPTIONS -pthread -fPIC -Wall -DGSWARN -DGSDIAGNOSE -Wno-import -g -O2 -g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong -Wformat -Werror=format-security -fgnu-runtime -Wno-unknown-pragmas -Wno-cpp -fconstant-string-class=NSConstantString -I. -I/usr/local/include/GNUstep -I/usr/include/GNUstep \
>        -o obj/Lynkeos.obj/LynkeosStandardImageBuffer.m.o
> make[4]: *** [/usr/share/GNUstep/Makefiles/Instance/application.make:147: internal-app-run-compile-submake] Error 2
> make[3]: *** [/usr/share/GNUstep/Makefiles/Master/rules.make:297: Lynkeos.all.app.variables] Error 2
> make[2]: *** [/usr/share/GNUstep/Makefiles/Master/application.make:38: internal-all] Error 2
> dh_auto_build: cd GNUstep && make -j2 -O "INSTALL=install --strip-program=true" messages=yes "CFLAGS=-g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong -Wformat -Werror=format-security" "CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2" "CXXFLAGS=-g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong -Wformat -Werror=format-security" "FCFLAGS=-g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong" "FFLAGS=-g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong" "GCJFLAGS=-g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong" "LDFLAGS=-Wl,-z,relro -Wl,-z,now -Wl,--no-undefined -Wl,--as-needed" "OBJCFLAGS=-g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong -Wformat -Werror=format-security" "OBJCXXFLAGS=-g -O2 -fdebug-prefix-map=/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1=. -fstack-protector-strong -Wformat -Werror=format-security" returned exit code 2
> make[1]: *** [debian/rules:15: override_dh_auto_build] Error 25
> make[1]: Leaving directory '/<<BUILDDIR>>/lynkeos.app-2.10+dfsg1'
> make: *** [debian/rules:12: build-arch] Error 2
> dpkg-buildpackage: error: debian/rules build-arch subprocess returned exit status 2

There are two problems here:

PAGE_SIZE is not necessarily a constant. For example, MIPS kernels can
be compiled with different flags to change the page size. If you need to
use the page size, you should use sysconf(_SC_PAGESIZE) instead which
will calculate it at runtime.

In this case, the PAGE_SIZE constant is provided by <sys/user.h>. The
entire contents of this header is highly architecture specific and
portable applications should not include it at all.

Thanks,
James

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.alioth.debian.org/pipermail/pkg-gnustep-maintainers/attachments/20180316/5208b33c/attachment.sig>


More information about the pkg-GNUstep-maintainers mailing list