Use libc execvpe(3).

This commit is contained in:
kili 2012-03-23 21:33:45 +00:00
parent e772a3c041
commit 887457ed69
5 changed files with 51 additions and 6 deletions

View File

@ -1,10 +1,10 @@
# $OpenBSD: Makefile,v 1.19 2010/11/17 08:05:17 espie Exp $
# $OpenBSD: Makefile,v 1.20 2012/03/23 21:33:45 kili Exp $
COMMENT = Haskell 98 interpreter
DISTNAME = hugs98-plus-Sep2006
PKGNAME = hugs98-2006.09
REVISION = 0
REVISION = 1
CATEGORIES = lang
MAINTAINER = Matthias Kilian <kili@openbsd.org>
HOMEPAGE = http://www.haskell.org/hugs/

View File

@ -0,0 +1,31 @@
$OpenBSD: patch-packages_base_cbits_execvpe_c,v 1.1 2012/03/23 21:33:45 kili Exp $
Don't build the included execvpe().
--- packages/base/cbits/execvpe.c.orig Thu Sep 21 00:28:37 2006
+++ packages/base/cbits/execvpe.c Fri Mar 23 21:36:46 2012
@@ -5,8 +5,6 @@
-------------------------------------------------------------------------- */
#include "HsBase.h"
-#if !(defined(_MSC_VER) || defined(__MINGW32__) || defined(_WIN32)) /* to the end */
-
/* Evidently non-Posix. */
/* #include "PosixSource.h" */
@@ -16,6 +14,7 @@
#include <string.h>
#include <errno.h>
+#if 0
/*
* We want the search semantics of execvp, but we want to provide our
* own environment, like execve. The following copyright applies to
@@ -153,6 +152,7 @@ execvpe(char *name, char *const argv[], char **envp)
free(buf);
return (-1);
}
+#endif
/* Copied verbatim from ghc/lib/std/cbits/system.c. */

View File

@ -0,0 +1,14 @@
$OpenBSD: patch-packages_base_include_HsBase_h,v 1.1 2012/03/23 21:33:45 kili Exp $
Don't build the included execvpe().
--- packages/base/include/HsBase.h.orig Thu Sep 21 00:28:37 2006
+++ packages/base/include/HsBase.h Fri Mar 23 21:41:22 2012
@@ -151,7 +151,6 @@ extern HsInt nocldstop;
#if !defined(_MSC_VER) && !defined(__MINGW32__) && !defined(_WIN32)
/* in execvpe.c */
-extern int execvpe(char *name, char *const argv[], char **envp);
extern void pPrPr_disableITimers (void);
#endif

View File

@ -1,4 +1,4 @@
@comment $OpenBSD: PFRAG.shared,v 1.3 2008/10/29 22:55:40 kili Exp $
@comment $OpenBSD: PFRAG.shared,v 1.4 2012/03/23 21:33:45 kili Exp $
lib/hugs/packages/OpenGL/Graphics/Rendering/OpenGL/GL/BeginEnd.so
lib/hugs/packages/OpenGL/Graphics/Rendering/OpenGL/GL/Bitmaps.so
lib/hugs/packages/OpenGL/Graphics/Rendering/OpenGL/GL/BufferObjects.so
@ -56,7 +56,6 @@ lib/hugs/packages/base/Foreign/Marshal/Utils.so
lib/hugs/packages/base/Foreign/Ptr.so
lib/hugs/packages/base/System/Posix/Internals.so
lib/hugs/packages/base/System/Posix/Signals.so
lib/hugs/packages/base/System/Process/Internals.so
lib/hugs/packages/hugsbase/Hugs/Storable.so
lib/hugs/packages/network/Network/BSD.so
lib/hugs/packages/network/Network/Socket.so

View File

@ -1,4 +1,4 @@
@comment $OpenBSD: PLIST,v 1.9 2008/10/29 22:55:40 kili Exp $
@comment $OpenBSD: PLIST,v 1.10 2012/03/23 21:33:45 kili Exp $
%%SHARED%%
bin/cpphs-hugs
@bin bin/ffihugs
@ -644,7 +644,6 @@ lib/hugs/packages/base/Foreign/Marshal/Utils.hs
lib/hugs/packages/base/Foreign/Ptr.hs
lib/hugs/packages/base/Foreign/StablePtr.hs
lib/hugs/packages/base/Foreign/Storable.hs
lib/hugs/packages/base/LICENSE
lib/hugs/packages/base/Numeric.hs
lib/hugs/packages/base/Paths_base.hs
lib/hugs/packages/base/Prelude.hs
@ -690,6 +689,8 @@ lib/hugs/packages/base/Text/Read/Lex.hs
lib/hugs/packages/base/Text/Show/
lib/hugs/packages/base/Text/Show.hs
lib/hugs/packages/base/Text/Show/Functions.hs
lib/hugs/packages/base/autogen/
lib/hugs/packages/base/autogen/Paths_base.hs
lib/hugs/packages/cpphs/
lib/hugs/packages/cpphs/Language/
lib/hugs/packages/cpphs/Language/Preprocessor/