Bug 195601 - [patch] archivers/file-roller 3.14.1 fails to build on FreeBSD 8.4
Summary: [patch] archivers/file-roller 3.14.1 fails to build on FreeBSD 8.4
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Some People
Assignee: Don Lewis
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-12-03 08:00 UTC by Don Lewis
Modified: 2015-04-11 18:07 UTC (History)
0 users

See Also:
bugzilla: maintainer-feedback? (gnome)


Attachments
patch to fix build of archivers/file-roller 3.14.1 on FreeBSD 8.4 (1.04 KB, patch)
2014-12-03 08:00 UTC, Don Lewis
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Don Lewis freebsd_committer freebsd_triage 2014-12-03 08:00:41 UTC
Created attachment 150134 [details]
patch to fix build of archivers/file-roller 3.14.1 on FreeBSD 8.4

The archivers/file-roller version 3.14.1 port fails to build on FreeBSD 8.4:

  CC       fr-command-tar.o
fr-command-lrzip.c: In function 'list__process_line':
fr-command-lrzip.c:48: error: 'struct stat' has no member named 'st_mtim'
Makefile:720: recipe for target 'fr-command-lrzip.o' failed
gmake[4]: *** [fr-command-lrzip.o] Error 1
gmake[4]: *** Waiting for unfinished jobs....
gmake[4]: Leaving directory '/wrkdirs/usr/ports/archivers/file-roller/work/file-roller-3.14.1/src'
Makefile:753: recipe for target 'all-recursive' failed
gmake[3]: *** [all-recursive] Error 1
gmake[3]: Leaving directory '/wrkdirs/usr/ports/archivers/file-roller/work/file-roller-3.14.1/src'
Makefile:551: recipe for target 'all' failed
gmake[2]: *** [all] Error 2
gmake[2]: Leaving directory '/wrkdirs/usr/ports/archivers/file-roller/work/file-roller-3.14.1/src'
Makefile:496: recipe for target 'all-recursive' failed
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory '/wrkdirs/usr/ports/archivers/file-roller/work/file-roller-3.14.1'
Makefile:425: recipe for target 'all' failed
gmake: *** [all] Error 2
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop in /usr/ports/archivers/file-roller.


In FreeBSD 8.4 this member of struct stat is named st_mtimespec.  In the early days of FreeBSD 9 (after the branch but before 9.0-RELEASE), it was renamed to st_mtim in src rev r205792 for POSIX 2008 compliance.  This change was never merged back to 8-STABLE.  There was no corresponding bump of __FreeBSD_version, but the change happened between 900010 and 900011.

The attached patch tweaks the source to use the old name when building on FreeBSD 8.4.
Comment 1 Bugzilla Automation freebsd_committer freebsd_triage 2014-12-03 08:00:41 UTC
Auto-assigned to maintainer gnome@FreeBSD.org
Comment 2 commit-hook freebsd_committer freebsd_triage 2015-04-11 17:43:25 UTC
A commit references this bug:

Author: truckman
Date: Sat Apr 11 17:42:54 UTC 2015
New revision: 383819
URL: https://svnweb.freebsd.org/changeset/ports/383819

Log:
  n FreeBSD 8 the name of the mtime member of struct stat was st_mtimespec.
  In the early days of FreeBSD 9 (after the branch but before 9.0-RELEASE),
  it was renamed to st_mtim in src rev r205792 for POSIX 2008 compliance.
  This change was never merged back to 8-STABLE. There was no corresponding
  bump of __FreeBSD_version, but the change happened between r900010 and
  r900011.  Patch the source to use the old name when building on FreeBSD 8.

  Remove the BROKEN tag to allow the port to be built on FreeBSD 8.

  PR:		195601
  Differential Revision:	https://reviews.freebsd.org/D2281
  Reviewed by:	kwm
  Approved by:	mat (mentor)

Changes:
  head/archivers/file-roller/Makefile
  head/archivers/file-roller/files/patch-src_fr-command-patch-src_fr-command-lrzip.c