Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 914505 - sys-apps/hdparm: enable LFS flags
Summary: sys-apps/hdparm: enable LFS flags
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords: PullRequest
Depends on:
Blocks: lfs-tracker
  Show dependency tree
 
Reported: 2023-09-21 21:55 UTC by Daniil Lunev
Modified: 2023-10-01 07:43 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Daniil Lunev 2023-09-21 21:55:34 UTC
This is a ticket to add append-lfs-flags to the hdparm ebuild.

To make it a clean addition, it is required to slightly patch up the source:
The source code defines _LARGEFILE64_SOURCE and build shows a warning for re-definition.

hdparm.c:7:9: warning: '_LARGEFILE64_SOURCE' macro redefined [-Wmacro-redefined]
#define _LARGEFILE64_SOURCE /*for lseek64*/
        ^
<command line>:5:9: note: previous definition is here
#define _LARGEFILE64_SOURCE 1
        ^
In file included from hdparm.c:9:
In file included from /build/cherry/usr/include/unistd.h:25:

The patch-up is to #ifndef protect the _LARGEFILE64_SOURCE.

diff --git a/hdparm.c b/hdparm.c
index eb9796b..a3204f9 100644
--- a/hdparm.c
+++ b/hdparm.c
@@ -4,7 +4,9 @@
  */
 #define HDPARM_VERSION "v9.65"

+#ifndef _LARGEFILE64_SOURCE
 #define _LARGEFILE64_SOURCE /*for lseek64*/
+#endif
 #define _BSD_SOURCE    /* for strtoll() */
 #include <unistd.h>
 #include <stdlib.h>

Pull request is coming shortly
Comment 1 Larry the Git Cow gentoo-dev 2023-10-01 07:43:01 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=419b3db36f46fec8382467828ab5e2837173905c

commit 419b3db36f46fec8382467828ab5e2837173905c
Author:     Daniil Lunev <dlunev@google.com>
AuthorDate: 2023-09-21 21:59:22 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-10-01 07:42:29 +0000

    sys-apps/hdparm: enable LFS flags
    
    ```
    $ diff -u hdparm-9.65-r1.ebuild hdparm-9.65-r2.ebuild
     --- hdparm-9.65-r1.ebuild      2023-09-22 07:41:40.287176532 +1000
     +++ hdparm-9.65-r2.ebuild      2023-09-22 07:58:18.888053647 +1000
     @@ -17,6 +17,7 @@
    
      PATCHES=(
            "${FILESDIR}"/${PN}-9.60-build.patch
     +      "${FILESDIR}"/${P}-graceful-lfs.patch
      )
    
      src_prepare() {
     @@ -25,6 +26,10 @@
            use static && append-ldflags -static
      }
    
     +src_configure() {
     +      append-lfs-flags
     +}
     +
      src_compile() {
            emake STRIP="true" CC="$(tc-getCC)"
      }
    ```
    
    Closes: https://bugs.gentoo.org/914505
    Signed-off-by: Daniil Lunev <dlunev@google.com>
    Closes: https://github.com/gentoo/gentoo/pull/32979
    Signed-off-by: Sam James <sam@gentoo.org>

 .../hdparm/files/hdparm-9.65-graceful-lfs.patch    | 16 +++++++
 sys-apps/hdparm/hdparm-9.65-r2.ebuild              | 50 ++++++++++++++++++++++
 2 files changed, 66 insertions(+)