Bug 163942 - [patch] fix i386 build of dns/inadyn
Summary: [patch] fix i386 build of dns/inadyn
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-01-09 06:40 UTC by Enji Cooper
Modified: 2013-02-03 22:30 UTC (History)
0 users

See Also:


Attachments
file.diff (1.83 KB, patch)
2012-01-09 06:40 UTC, Enji Cooper
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Enji Cooper freebsd_committer freebsd_triage 2012-01-09 06:40:13 UTC
Building FreeNAS, we at iXsystems and the users that use FreeNAS have run into situations on more than one occasion where the inadyn binary has been corrupted somehow when building the i386 package (oddly enough the amd64 package isn't affected).

The following patch ignores the contributed Makefile -- which does this undesirable things, like using TARGET_ARCH, for OS names -- and instead uses a simple pmake Makefile to get the job done.

A few examples are as follows:

1. http://support.freenas.org/ticket/1144 , comments 3 and 5.
2. http://forums.freenas.org/showthread.php?2050-Dynamic-DNS-problem
3. http://forums.freenas.org/showthread.php?5078-8-0-3-RELEASE-coming-soon&p=19721&viewfull=1#post19721

Fix: Patch attached with submission follows:
How-To-Repeat: I don't have clear reproduction steps for the issue.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2012-01-09 06:40:21 UTC
Maintainer of dns/inadyn,

Please note that PR ports/163942 has just been submitted.

If it contains a patch for an upgrade, an enhancement or a bug fix
you agree on, reply to this email stating that you approve the patch
and a committer will take care of it.

The full text of the PR can be found at:
    http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/163942

-- 
Edwin Groothuis via the GNATS Auto Assign Tool
edwin@FreeBSD.org
Comment 2 Edwin Groothuis freebsd_committer freebsd_triage 2012-01-09 06:40:23 UTC
State Changed
From-To: open->feedback

Awaiting maintainers feedback (via the GNATS Auto Assign Tool)
Comment 3 Oleksii Samorukov freebsd_committer freebsd_triage 2012-01-10 17:20:53 UTC
Hi,
i was sure that it is fixed bug because it was discussed with one of the 
commiters. I will submit correct patch soon. Problem is that 
install_script should never be used for anything, but text files.

Please, do not commit this diff, its overcomplicated.
Comment 4 Oleksii Samorukov freebsd_committer freebsd_triage 2012-01-10 17:32:45 UTC
This patch should address issue. Please commit it.

diff -ruN --exclude=CVS /usr/ports/dns/inadyn/Makefile 
/root/tmp/inadyn/Makefile
--- /usr/ports/dns/inadyn/Makefile      2009-07-10 23:23:38.000000000 +0000
+++ /root/tmp/inadyn/Makefile   2012-01-10 17:25:14.866475561 +0000
@@ -45,10 +45,10 @@
  do-install:
  .if !defined(NOPORTDOCS)
         ${MKDIR} ${DOCSDIR}
-       ${INSTALL_MAN} ${WRKSRC}/${PORTDOCS} ${DOCSDIR}
+       ${INSTALL_DATA} ${WRKSRC}/${PORTDOCS} ${DOCSDIR}
  .endif
-        ${INSTALL_SCRIPT} ${WRKSRC}/bin/linux/inadyn ${PREFIX}/bin
-        ${INSTALL_SCRIPT} ${WRKSRC}/man/inadyn.8 ${MANPREFIX}/man/man8
-        ${INSTALL_SCRIPT} ${WRKSRC}/man/inadyn.conf.5 ${MANPREFIX}/man/man5
+        ${INSTALL_PROGRAM} ${WRKSRC}/bin/linux/inadyn ${PREFIX}/bin
+        ${INSTALL_MAN} ${WRKSRC}/man/inadyn.8 ${MANPREFIX}/man/man8
+        ${INSTALL_MAN} ${WRKSRC}/man/inadyn.conf.5 ${MANPREFIX}/man/man5

  .include <bsd.port.mk>
Comment 5 Mark Linimon freebsd_committer freebsd_triage 2012-01-10 23:17:42 UTC
State Changed
From-To: feedback->suspended

Maintainer is working on a more general solution.
Comment 6 Mark Linimon freebsd_committer freebsd_triage 2012-01-11 14:22:22 UTC
State Changed
From-To: suspended->open

Maintainer had already replied with updated patch.  The Audit-Trail 
has been re-edited to reflect that.
Comment 7 dfilter service freebsd_committer freebsd_triage 2012-01-29 10:56:19 UTC
avl         2012-01-29 10:56:06 UTC

  FreeBSD ports repository

  Modified files:
    dns/inadyn           Makefile 
  Log:
  - Fix broken binary caused by using INSTALL_SCRIPT on some architectures
  - Use INSTALL_MAN for the man files and respect NO_INSTALL_MANPAGES knob
  - Use INSTALL_DATA for PORTDOCS file
  - Hide post-extract and post-patch procedure
  - Bump PORTREVISION
  
  PR:             ports/163942 [1]
  Submitted by:   Garrett Cooper <yanegomi AT gmail.com> [1]
  Approved by:    maintainer via private mail
  
  Revision  Changes    Path
  1.10      +11 -10    ports/dns/inadyn/Makefile
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 8 Alexander Logvinov freebsd_committer freebsd_triage 2012-01-29 10:58:27 UTC
State Changed
From-To: open->closed

Committed, with changes. Thanks!
Comment 9 Rick Richard 2012-10-25 01:36:32 UTC
 Hi there,

 I don't think that this latest update has resolved the original issue 
 with TARGET_ARCH.  I ran into this same problem today when using the 
 FreeNAS build scripts and the latest version of the port.  You can 
 reproduce it like so:

 [root@ /usr/ports/dns/inadyn]# make TARGET_ARCH=amd64
 .
 .
 .
 [root@ /usr/ports/dns/inadyn]# make TARGET_ARCH=amd64 install
 ===>  Installing for inadyn-1.96.2_3
 ===>   Generating temporary packing list
 ===>  Checking if dns/inadyn already installed
 /bin/mkdir -p /usr/local/share/doc/inadyn
 install  -o root -g wheel -m 444 -p 
 /usr/ports/dns/inadyn/work/inadyn.v1.96.2/readme.html 
 /usr/local/share/doc/inadyn
 install  -s -o root -g wheel -m 555 
 /usr/ports/dns/inadyn/work/inadyn.v1.96.2/bin/linux/inadyn 
 /usr/local/bin
 strip: /usr/local/bin/inadyn: File format not recognized
 install: wait: No such file or directory
 *** Error code 70

 Stop in /usr/ports/dns/inadyn.


 This happens because inadyn puts the binary under 
 workdir/bin/${TARGET_ARCH} when TARGET_ARCH is set.  The Makefile, 
 however, installs out of workdir/bin/linux.

 [root@ /usr/ports/dns/inadyn]# find work/inadyn.v1.96.2/bin/ -type d
 work/inadyn.v1.96.2/bin/
 work/inadyn.v1.96.2/bin/win32
 work/inadyn.v1.96.2/bin/mac
 work/inadyn.v1.96.2/bin/amd64  <--- Here is the correct directory
 work/inadyn.v1.96.2/bin/linux

 Regards,
 Rick