Do not attempt to dlopen PIE objects, which was disallowed with glibc 2.30. https://gitlab.haskell.org/ghc/ghc/issues/17952 https://sourceware.org/bugzilla/show_bug.cgi?id=24323 Patch submitted upstream: https://gitlab.haskell.org/ghc/ghc/-/merge_requests/2947 diff --git a/testsuite/tests/dynlibs/Makefile b/testsuite/tests/dynlibs/Makefile --- a/testsuite/tests/dynlibs/Makefile +++ b/testsuite/tests/dynlibs/Makefile @@ -60,6 +60,4 @@ T5373: .PHONY: T13702 T13702: '$(TEST_HC)' -v0 -dynamic -rdynamic -fPIC -pie T13702.hs - '$(TEST_HC)' -v0 -dynamic T13702a.hs - ./T13702 # first make sure executable itself works - ./T13702a # then try dynamically loading it as library + ./T13702 diff --git a/testsuite/tests/dynlibs/T13702.hs b/testsuite/tests/dynlibs/T13702.hs --- a/testsuite/tests/dynlibs/T13702.hs +++ b/testsuite/tests/dynlibs/T13702.hs @@ -2,8 +2,3 @@ main :: IO () main = putStrLn "hello world" - -foreign export ccall "hello" hello :: IO () - -hello :: IO () -hello = putStrLn "hello world again" diff --git a/testsuite/tests/dynlibs/T13702.stdout b/testsuite/tests/dynlibs/T13702.stdout --- a/testsuite/tests/dynlibs/T13702.stdout +++ b/testsuite/tests/dynlibs/T13702.stdout @@ -1,2 +1 @@ hello world -hello world again diff --git a/testsuite/tests/dynlibs/T13702a.hs b/testsuite/tests/dynlibs/T13702a.hs deleted file mode 100644 --- a/testsuite/tests/dynlibs/T13702a.hs +++ /dev/null @@ -1,12 +0,0 @@ -{-# LANGUAGE ForeignFunctionInterface #-} - -import Foreign -import System.Posix.DynamicLinker - -main :: IO () -main = do - dl <- dlopen "./T13702" [RTLD_NOW] - funptr <- dlsym dl "hello" :: IO (FunPtr (IO ())) - mkAction funptr - -foreign import ccall "dynamic" mkAction :: FunPtr (IO ()) -> IO () ommitter'>committer
path: root/tests/git.scm
AgeCommit message (Expand)Author
2024-07-18git: Remove untracked files from cached checkouts....Cached checkouts could end up with stale untracked files, for example because the checkout was interrupted. As a result, when this happens for the Guix checkout, users would not get substitutes for ‘guix pull’. * guix/git.scm (delete-untracked-files): New procedure. (switch-to-ref): Use it. * tests/git.scm ("update-cached-checkout, untracked files removed"): New test. Co-authored-by: Ricardo Wurmus <rekado@elephly.net> Change-Id: Iccbe644ade396ad27a037db7e0ef1c2a68ef91ce Ludovic Courtès
2023-09-26tests: Assume ‘git’ is always available....* tests/channels.scm (gpg+git-available?): Check for ‘gpg-command’ only. Remove all ‘test-skip’ statements. * tests/derivations.scm: Likewise. * tests/git-authenticate.scm: Likewise. * tests/git.scm: Likewise. * tests/import-git.scm: Likewise. Ludovic Courtès
2022-10-17git: 'update-cached-checkout' returns the commit ID when given a tag....Previously, starting with commit efa578ecaece67366b4b0e2266de7c2faaa4ae54, 'update-cached-checkout' would return the OID of the annotated tag the tag points to. With this change it returns the OID of the commit object in all cases. * guix/git.scm (resolve-reference): In the 'tag' case, call 'tag-target-id' and 'tag-lookup' when OID designates an annotated tag. * tests/git.scm ("update-cached-checkout, tag"): New test. Ludovic Courtès
2022-02-14git: Add 'commit-descendant?'....* guix/git.scm (commit-descendant?): New procedure. * tests/git.scm ("commit-descendant?"): New test. Ludovic Courtès