Bug 1244855 - vifm fails to build on aarch64
Summary: vifm fails to build on aarch64
Keywords:
Status: CLOSED RAWHIDE
Alias: None
Product: Fedora
Classification: Fedora
Component: vifm
Version: rawhide
Hardware: aarch64
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Ben Boeckel
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks: ARM64, F-ExcludeArch-aarch64
TreeView+ depends on / blocked
 
Reported: 2015-07-20 15:32 UTC by Marcin Juszkiewicz
Modified: 2015-07-20 23:32 UTC (History)
1 user (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2015-07-20 23:32:05 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
fix for spec (1.03 KB, patch)
2015-07-20 15:33 UTC, Marcin Juszkiewicz
no flags Details | Diff

Description Marcin Juszkiewicz 2015-07-20 15:32:23 UTC
Description of problem:

vifm assumes that MAX_ARG_STRLEN macro is safe to use if it is defined. But it's definition uses PAGE_SIZE which is not defined on AArch64 (as it can be 4K or 64K there).

Version-Release number of selected component (if applicable):

0.8-1

How reproducible:

always

Steps to Reproduce:
1. build on aarch64 (with arm-koji)

Actual results:

gcc -DHAVE_CONFIG_H -I. -I..   -I/usr/include/ncursesw  -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -D_FILE_OFFSET_BITS=64 -include ../config.h -c -o tags.o tags.c
In file included from utils/utils_nix.h:23:0,
                 from utils/utils_nix.c:20:
utils/utils_nix.c: In function 'make_execv_array':
utils/utils_nix.c:265:34: error: 'PAGE_SIZE' undeclared (first use in this function)
  const size_t safe_arg_len = MIN(MAX_ARG_STRLEN, MAX_ARG_STRLEN - 4096U);
                                  ^
utils/macros.h:69:18: note: in definition of macro 'MIN'
           typeof(a) _a = (a); \
                  ^
utils/utils_nix.c:265:34: note: each undeclared identifier is reported only once for each function it appears in
  const size_t safe_arg_len = MIN(MAX_ARG_STRLEN, MAX_ARG_STRLEN - 4096U);
                                  ^
utils/macros.h:69:18: note: in definition of macro 'MIN'
           typeof(a) _a = (a); \
                  ^
Makefile:1065: recipe for target 'utils/utils_nix.o' failed
make[2]: *** [utils/utils_nix.o] Error 1

Expected results:

package builds

Additional info:

Comment 1 Marcin Juszkiewicz 2015-07-20 15:33:09 UTC
Created attachment 1053969 [details]
fix for spec

Comment 2 Marcin Juszkiewicz 2015-07-20 15:35:29 UTC
reported upstream: https://github.com/vifm/vifm/issues/103


Note You need to log in before you can comment on or make changes to this bug.