# HG changeset patch # User Danek Duvall # Date 1427497303 25200 # Node ID d0b41e7f3e31c3d06dedeeeb8862c9cf8bf34959 # Parent 7d92a60b7db234f896afdb9b5340f1362ba3656a 20781120 nethack fails to compile 64-bit diff -r 7d92a60b7db2 -r d0b41e7f3e31 components/nethack/Makefile --- a/components/nethack/Makefile Mon Mar 23 23:01:43 2015 -0700 +++ b/components/nethack/Makefile Fri Mar 27 16:01:43 2015 -0700 @@ -54,15 +54,28 @@ COMPONENT_INSTALL_ARGS += CHGRP=true COMPONENT_INSTALL_ARGS += ROOT=$(PROTO_DIR) +# Nethack's build infrastructure doesn't let you easily override CFLAGS. +# Luckily, all the source files live in the same location relative to the +# include directory, so we can just stuff a -I into CFLAGS matching what's +# there in the Makefiles. And we have to force this to be overridden by +# putting -e into MAKEFLAGS. COMPONENT_BUILD_ENV += CC=$(CC) +COMPONENT_BUILD_ENV += CFLAGS="$(CFLAGS) -I../include" +COMPONENT_BUILD_ENV += LFLAGS="$(CC_BITS)" +COMPONENT_BUILD_ENV += MAKEFLAGS=-e COMPONENT_INSTALL_ENV += CC=$(CC) +COMPONENT_INSTALL_ENV += CFLAGS="$(CFLAGS) -I../include" +COMPONENT_INSTALL_ENV += LFLAGS="$(CC_BITS)" +COMPONENT_INSTALL_ENV += MAKEFLAGS=-e PKG_PROTO_DIRS += $(COMPONENT_SRC)/doc +ASLR_MODE = $(ASLR_ENABLE) + # common targets -build: $(BUILD_32) +build: $(BUILD_64) -install: $(INSTALL_32) +install: $(INSTALL_64) sed -e 's/^!\(NetHack.tomb\)/\1/' -e 's/^!\(NetHack.pet\)/\1/' \ -e 's/^!\(NetHack.tile_file\)/\1/' \ $(COMPONENT_SRC)/win/X11/NetHack.ad \ diff -r 7d92a60b7db2 -r d0b41e7f3e31 components/nethack/nethack.copyright --- a/components/nethack/nethack.copyright Mon Mar 23 23:01:43 2015 -0700 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,150 +0,0 @@ ----------------------------------------------------------------------- -"NetHack, Copyright 1985-2003" -Copyright 1991 University of Wisconsin-Madison -Copyright (c) 1983 Regents of the University of California. -Copyright (C) 1987-1990 by Ken Arromdee -Copyright (C) 1992-2000 Trolltech AS. All rights reserved. -Copyright (C) 1991,1993,1995 by Robert Patrick Rankin -Copyright (C) 1998 by Anthony Taylor -Copyright (C) 1998 by Erik Andersen -Copyright (C) 2001-2003 by Alex Kompel -Copyright (C) 2002 by Dylan Alex Simon -Copyright (c) 1988-1989 AT&T -Copyright (c) 1989,1992 Janet Walz -Copyright (c) 1989 Mike Threepoint -Copyright (c) 1989-1996 by Jean-Christophe Collet -Copyright (c) 1986-1995 by M. Stephenson -Copyright (c) 1989y Norm Meluch and Stephen Spackman -Copyright (c) 1991-1993 P. Winner -Copyright (c) 1990-1993 by David Cohrs -Copyright (c) 1989,1991-1993 Izchak Miller -Copyright (c) 1992 by Jon Watte -Copyright (c) 1991-1996 Gregg Wonderly, Naperville Illinois -Copyright (c) 1994 by Boudewijn Wayers -Copyright (c) 1994-1996 Andrew Church, Olney, Maryland -Copyright (c) 1990-1996,2002 by Dean Luick -Copyright (c) 1991 Michael Hamel -Copyright (c) 1998-1999,2002 by Kevin Hugo -Copyright (c) 2002 Mark Modrall -Copyright (c) 1989 Benson I. Margulies -Copyright (c) 1989 Steve Linhart -Copyright (c) 1989 Eric Raymond -Copyright (c) 1999-2002 Christian Bressler -Copyright (c) 1993 David Hairston -Copyright (c) 2000 Janne Salmij??rv -Copyright (c) 1992 Hao-Yang Wang, Jonathan Handler -Copyright (c) 1990-1996 Kenneth Lorber -Copyright (c) 1992-1993 Jon W{tte 1993. -Copyright (c) 1997 Michael Allison -Copyright (c) 1990-2003 NetHack PC Development Team 1990-2003 -Copyright (c) 1993 Macintosh NetHack Port Team -Copyright (c) 1992-1999 the NetHack Development Team -Copyright (c) 1988-1992 Olaf Seibert -Copyright (c) 2001 Slash'EM development team -Copyright (c) 1988 Steve Creps -Copyright (c) 1985-2003 Stichting Mathematisch Centrum, Amsterdam -Copyright (c) Timo Hakulinen, 1990, 1991, 1992, 1993, 1996. -Copyright (c) 1999-2002 Yitzhak Sapir -Copyright (c) 1996-2001 Warwick Allison -Copyright (c) 1986 Scott R. Turner, srt@ucla -Copyright (c) 1990 David Koblas -COPYRIGHT "Copyright 1989-1991 Network Computing Devices, Inc." -with acknowledgements to Kevin Darcy ----------------------------------------------------------------------- - NETHACK GENERAL PUBLIC LICENSE - (Copyright 1989 M. Stephenson) - - (Based on the BISON general public license, - copyright 1988 Richard M. Stallman) - - Everyone is permitted to copy and distribute verbatim copies of this - license, but changing it is not allowed. You can also use this wording to - make the terms for other programs. - - The license agreements of most software companies keep you at the mercy of -those companies. By contrast, our general public license is intended to give -everyone the right to share NetHack. To make sure that you get the rights we -want you to have, we need to make restrictions that forbid anyone to deny you -these rights or to ask you to surrender the rights. Hence this license -agreement. - - Specifically, we want to make sure that you have the right to give away -copies of NetHack, that you receive source code or else can get it if you -want it, that you can change NetHack or use pieces of it in new free -programs, and that you know you can do these things. - - To make sure that everyone has such rights, we have to forbid you to -deprive anyone else of these rights. For example, if you distribute copies -of NetHack, you must give the recipients all the rights that you have. You -must make sure that they, too, receive or can get the source code. And you -must tell them their rights. - - Also, for our own protection, we must make certain that everyone finds out -that there is no warranty for NetHack. If NetHack is modified by someone -else and passed on, we want its recipients to know that what they have is -not what we distributed. - - Therefore we (Mike Stephenson and other holders of NetHack copyrights) make -the following terms which say what you must do to be allowed to distribute or -change NetHack. - - - COPYING POLICIES - - 1. You may copy and distribute verbatim copies of NetHack source code as -you receive it, in any medium, provided that you keep intact the notices on -all files that refer to copyrights, to this License Agreement, and to the -absence of any warranty; and give any other recipients of the NetHack -program a copy of this License Agreement along with the program. - - 2. You may modify your copy or copies of NetHack or any portion of it, and -copy and distribute such modifications under the terms of Paragraph 1 above -(including distributing this License Agreement), provided that you also do the -following: - - a) cause the modified files to carry prominent notices stating that you - changed the files and the date of any change; and - - b) cause the whole of any work that you distribute or publish, that in - whole or in part contains or is a derivative of NetHack or any part - thereof, to be licensed at no charge to all third parties on terms - identical to those contained in this License Agreement (except that you - may choose to grant more extensive warranty protection to some or all - third parties, at your option) - - c) You may charge a distribution fee for the physical act of - transferring a copy, and you may at your option offer warranty protection - in exchange for a fee. - - 3. You may copy and distribute NetHack (or a portion or derivative of it, -under Paragraph 2) in object code or executable form under the terms of -Paragraphs 1 and 2 above provided that you also do one of the following: - - a) accompany it with the complete machine-readable source code, which - must be distributed under the terms of Paragraphs 1 and 2 above; or, - - b) accompany it with full information as to how to obtain the complete - machine-readable source code from an appropriate archive site. (This - alternative is allowed only for noncommercial distribution.) - -For these purposes, complete source code means either the full source -distribution as originally released over Usenet or updated copies of the -files in this distribution used to create the object code or executable. - - 4. You may not copy, sublicense, distribute or transfer NetHack except as -expressly provided under this License Agreement. Any attempt otherwise to -copy, sublicense, distribute or transfer NetHack is void and your rights to -use the program under this License agreement shall be automatically -terminated. However, parties who have received computer software programs -from you with this License Agreement will not have their licenses terminated -so long as such parties remain in full compliance. - - -Stated plainly: You are permitted to modify NetHack, or otherwise use parts -of NetHack, provided that you comply with the conditions specified above; -in particular, your modified NetHack or program containing parts of NetHack -must remain freely available as provided in this License Agreement. In -other words, go ahead and share NetHack, but don't try to stop anyone else -from sharing it farther. - -Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved. diff -r 7d92a60b7db2 -r d0b41e7f3e31 components/nethack/nethack.p5m --- a/components/nethack/nethack.p5m Mon Mar 23 23:01:43 2015 -0700 +++ b/components/nethack/nethack.p5m Fri Mar 27 16:01:43 2015 -0700 @@ -177,4 +177,4 @@ file path=var/games/nethack/record group=games mode=0664 \ original_name=SUNWnethack:var/games/nethack/record preserve=true dir path=var/games/nethack/save group=games mode=0775 -license nethack.copyright license=Nethack +license dat/license license=Nethack diff -r 7d92a60b7db2 -r d0b41e7f3e31 components/nethack/patches/64-bit.patch --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/components/nethack/patches/64-bit.patch Fri Mar 27 16:01:43 2015 -0700 @@ -0,0 +1,15 @@ +This patch is required in order to build in 64-bit mode on Solaris. + +This patch will not be submitted upstream. + +--- include/system.h.orig Sun Dec 7 15:39:13 2003 ++++ include/system.h Tue Jul 23 11:00:47 2013 +@@ -162,7 +162,7 @@ + # endif + # if defined(POSIX_TYPES) || defined(__TURBOC__) + # ifndef bsdi +-E int FDECL(write, (int, const void *,unsigned)); ++/* E int FDECL(write, (int, const void *,unsigned)); */ + # endif + # else + # ifndef __MWERKS__ /* metrowerks defines write via universal headers */