summaryrefslogtreecommitdiff
path: root/standalone
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2013-04-19 16:32:16 -0400
committerGravatar Joey Hess <joey@kitenet.net>2013-04-19 16:32:16 -0400
commit0d57fbe816e4c0d84369357a6d2c7752e96748ac (patch)
tree0b6cd918f6cf0da94e6499bc0eca06aed9606c3e /standalone
parent8c8cd66afa75658bb325ffdd6a2aae1e6778b7ff (diff)
fix unavailable symbols in bionic, should let webdav build
Diffstat (limited to 'standalone')
-rw-r--r--standalone/android/haskell-patches/network-2.4.1.0_0002-remove-Network.BSD-symbols-not-available-in-bionic.patch157
-rw-r--r--standalone/android/haskell-patches/network-2.4.1.0_0003-configure-misdetects-accept4.patch34
2 files changed, 191 insertions, 0 deletions
diff --git a/standalone/android/haskell-patches/network-2.4.1.0_0002-remove-Network.BSD-symbols-not-available-in-bionic.patch b/standalone/android/haskell-patches/network-2.4.1.0_0002-remove-Network.BSD-symbols-not-available-in-bionic.patch
new file mode 100644
index 000000000..324809ad9
--- /dev/null
+++ b/standalone/android/haskell-patches/network-2.4.1.0_0002-remove-Network.BSD-symbols-not-available-in-bionic.patch
@@ -0,0 +1,157 @@
+From 8456a3b26261212052bad4d1de207504a3f85995 Mon Sep 17 00:00:00 2001
+From: Joey Hess <joey@kitenet.net>
+Date: Fri, 19 Apr 2013 15:14:10 -0400
+Subject: [PATCH] remove Network.BSD symbols not available in bionic
+
+---
+ Network/BSD.hsc | 98 ---------------------------------------------------------
+ 1 file changed, 98 deletions(-)
+
+diff --git a/Network/BSD.hsc b/Network/BSD.hsc
+index c199036..f0c9f5b 100644
+--- a/Network/BSD.hsc
++++ b/Network/BSD.hsc
+@@ -30,15 +30,6 @@ module Network.BSD
+ , getHostByAddr
+ , hostAddress
+
+-#if defined(HAVE_GETHOSTENT) && !defined(cygwin32_HOST_OS) && !defined(mingw32_HOST_OS) && !defined(_WIN32)
+- , getHostEntries
+-
+- -- ** Low level functionality
+- , setHostEntry
+- , getHostEntry
+- , endHostEntry
+-#endif
+-
+ -- * Service names
+ , ServiceEntry(..)
+ , ServiceName
+@@ -64,14 +55,6 @@ module Network.BSD
+ , getProtocolNumber
+ , defaultProtocol
+
+-#if !defined(cygwin32_HOST_OS) && !defined(mingw32_HOST_OS) && !defined(_WIN32)
+- , getProtocolEntries
+- -- ** Low level functionality
+- , setProtocolEntry
+- , getProtocolEntry
+- , endProtocolEntry
+-#endif
+-
+ -- * Port numbers
+ , PortNumber
+
+@@ -83,11 +66,7 @@ module Network.BSD
+ #if !defined(cygwin32_HOST_OS) && !defined(mingw32_HOST_OS) && !defined(_WIN32)
+ , getNetworkByName
+ , getNetworkByAddr
+- , getNetworkEntries
+ -- ** Low level functionality
+- , setNetworkEntry
+- , getNetworkEntry
+- , endNetworkEntry
+ #endif
+ ) where
+
+@@ -305,31 +284,6 @@ getProtocolNumber proto = do
+ (ProtocolEntry _ _ num) <- getProtocolByName proto
+ return num
+
+-#if !defined(cygwin32_HOST_OS) && !defined(mingw32_HOST_OS) && !defined(_WIN32)
+-getProtocolEntry :: IO ProtocolEntry -- Next Protocol Entry from DB
+-getProtocolEntry = withLock $ do
+- ent <- throwNoSuchThingIfNull "getProtocolEntry" "no such protocol entry"
+- $ trySysCall c_getprotoent
+- peek ent
+-
+-foreign import ccall unsafe "getprotoent" c_getprotoent :: IO (Ptr ProtocolEntry)
+-
+-setProtocolEntry :: Bool -> IO () -- Keep DB Open ?
+-setProtocolEntry flg = withLock $ trySysCall $ c_setprotoent (fromBool flg)
+-
+-foreign import ccall unsafe "setprotoent" c_setprotoent :: CInt -> IO ()
+-
+-endProtocolEntry :: IO ()
+-endProtocolEntry = withLock $ trySysCall $ c_endprotoent
+-
+-foreign import ccall unsafe "endprotoent" c_endprotoent :: IO ()
+-
+-getProtocolEntries :: Bool -> IO [ProtocolEntry]
+-getProtocolEntries stayOpen = withLock $ do
+- setProtocolEntry stayOpen
+- getEntries (getProtocolEntry) (endProtocolEntry)
+-#endif
+-
+ -- ---------------------------------------------------------------------------
+ -- Host lookups
+
+@@ -404,31 +358,6 @@ getHostByAddr family addr = do
+ foreign import CALLCONV safe "gethostbyaddr"
+ c_gethostbyaddr :: Ptr HostAddress -> CInt -> CInt -> IO (Ptr HostEntry)
+
+-#if defined(HAVE_GETHOSTENT) && !defined(cygwin32_HOST_OS) && !defined(mingw32_HOST_OS) && !defined(_WIN32)
+-getHostEntry :: IO HostEntry
+-getHostEntry = withLock $ do
+- throwNoSuchThingIfNull "getHostEntry" "unable to retrieve host entry"
+- $ trySysCall $ c_gethostent
+- >>= peek
+-
+-foreign import ccall unsafe "gethostent" c_gethostent :: IO (Ptr HostEntry)
+-
+-setHostEntry :: Bool -> IO ()
+-setHostEntry flg = withLock $ trySysCall $ c_sethostent (fromBool flg)
+-
+-foreign import ccall unsafe "sethostent" c_sethostent :: CInt -> IO ()
+-
+-endHostEntry :: IO ()
+-endHostEntry = withLock $ c_endhostent
+-
+-foreign import ccall unsafe "endhostent" c_endhostent :: IO ()
+-
+-getHostEntries :: Bool -> IO [HostEntry]
+-getHostEntries stayOpen = do
+- setHostEntry stayOpen
+- getEntries (getHostEntry) (endHostEntry)
+-#endif
+-
+ -- ---------------------------------------------------------------------------
+ -- Accessing network information
+
+@@ -490,33 +419,6 @@ getNetworkByAddr addr family = withLock $ do
+ foreign import ccall unsafe "getnetbyaddr"
+ c_getnetbyaddr :: NetworkAddr -> CInt -> IO (Ptr NetworkEntry)
+
+-getNetworkEntry :: IO NetworkEntry
+-getNetworkEntry = withLock $ do
+- throwNoSuchThingIfNull "getNetworkEntry" "no more network entries"
+- $ trySysCall $ c_getnetent
+- >>= peek
+-
+-foreign import ccall unsafe "getnetent" c_getnetent :: IO (Ptr NetworkEntry)
+-
+--- | Open the network name database. The parameter specifies
+--- whether a connection is maintained open between various
+--- networkEntry calls
+-setNetworkEntry :: Bool -> IO ()
+-setNetworkEntry flg = withLock $ trySysCall $ c_setnetent (fromBool flg)
+-
+-foreign import ccall unsafe "setnetent" c_setnetent :: CInt -> IO ()
+-
+--- | Close the connection to the network name database.
+-endNetworkEntry :: IO ()
+-endNetworkEntry = withLock $ trySysCall $ c_endnetent
+-
+-foreign import ccall unsafe "endnetent" c_endnetent :: IO ()
+-
+--- | Get the list of network entries.
+-getNetworkEntries :: Bool -> IO [NetworkEntry]
+-getNetworkEntries stayOpen = do
+- setNetworkEntry stayOpen
+- getEntries (getNetworkEntry) (endNetworkEntry)
+ #endif
+
+ -- Mutex for name service lockdown
+--
+1.8.2.rc3
+
diff --git a/standalone/android/haskell-patches/network-2.4.1.0_0003-configure-misdetects-accept4.patch b/standalone/android/haskell-patches/network-2.4.1.0_0003-configure-misdetects-accept4.patch
new file mode 100644
index 000000000..9be862b5a
--- /dev/null
+++ b/standalone/android/haskell-patches/network-2.4.1.0_0003-configure-misdetects-accept4.patch
@@ -0,0 +1,34 @@
+From 5b14dd83f9ff1d187871fc7c6e956cad95bc4e9b Mon Sep 17 00:00:00 2001
+From: Joey Hess <joey@kitenet.net>
+Date: Fri, 19 Apr 2013 15:36:25 -0400
+Subject: [PATCH] configure misdetects accept4
+
+---
+ Network/Socket.hsc | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Network/Socket.hsc b/Network/Socket.hsc
+index e6c0feb..49d090b 100644
+--- a/Network/Socket.hsc
++++ b/Network/Socket.hsc
+@@ -505,7 +505,7 @@ accept sock@(MkSocket s family stype protocol status) = do
+ #else
+ with (fromIntegral sz) $ \ ptr_len -> do
+ new_sock <-
+-# ifdef HAVE_ACCEPT4
++# if 0
+ throwSocketErrorIfMinus1RetryMayBlock "accept"
+ (threadWaitRead (fromIntegral s))
+ (c_accept4 s sockaddr ptr_len (#const SOCK_NONBLOCK))
+@@ -1589,7 +1589,7 @@ foreign import CALLCONV SAFE_ON_WIN "connect"
+ c_connect :: CInt -> Ptr SockAddr -> CInt{-CSockLen???-} -> IO CInt
+ foreign import CALLCONV unsafe "accept"
+ c_accept :: CInt -> Ptr SockAddr -> Ptr CInt{-CSockLen???-} -> IO CInt
+-#ifdef HAVE_ACCEPT4
++#if 0
+ foreign import CALLCONV unsafe "accept4"
+ c_accept4 :: CInt -> Ptr SockAddr -> Ptr CInt{-CSockLen???-} -> CInt -> IO CInt
+ #endif
+--
+1.8.2.rc3
+