haskell / ThreadScope

A graphical tool for profiling parallel Haskell programs
http://www.haskell.org/haskellwiki/ThreadScope
Other
154 stars 36 forks source link

Allow ghc-events 0.14 and template-haskell 2.17 #115

Closed markus1189 closed 3 years ago

markus1189 commented 3 years ago

To fix the build in nixpkgs with ghc 8.10.2, I had to bump the bounds.

Afterwards, threadscope builds fine for me.

markus1189 commented 3 years ago

The fails on travis and appveyor seem unrelated to my pr, could one of the maintainers have a look? E.g. on travis one fails with:

cabal: Cannot find the program 'gcc'. User-specified path 'gcc-9' does not refer to an executable and the program is not on the system path.
maoe commented 3 years ago

Sorry for the delay.

What platform did you test this branch on?

I'm having trouble building this branch with GHC 8.10.3 on macOS Big Sur:

Configuring gtk-0.15.5...
Preprocessing library for gtk-0.15.5..
linking dist/build/Graphics/UI/Gtk/Embedding/Embedding_hsc_make.o failed (exit code 1)
rsp file was: "dist/build/Graphics/UI/Gtk/Embedding/hsc2hscall8681-2.rsp"
command was: /usr/local/bin/gcc-9 dist/build/Graphics/UI/Gtk/Embedding/Embedding_hsc_make.o dist/build/Graphics/UI/Gtk/Embedding/Embedding_hsc_utils.o -o dist/build/Graphics/UI/Gtk/Embedding/Embedding_hsc_make -L/usr/local/Cellar/glib/2.66.4_1/lib -L/usr/local/Cellar/gtk+/2.24.33/lib -L/usr/local/Cellar/pango/1.48.0/lib -L/usr/local/Cellar/harfbuzz/2.7.4/lib -L/usr/local/Cellar/atk/2.36.0/lib -L/usr/local/Cellar/cairo/1.16.0_4/lib -L/usr/local/Cellar/gdk-pixbuf/2.42.2/lib -L/usr/local/opt/gettext/lib -lgthread-2.0 -lgtk-quartz-2.0 -lgdk-quartz-2.0 -lpangocairo-1.0 -lpango-1.0 -lharfbuzz -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl -framework Cocoa -L/Users/maoe/.cabal/store/ghc-8.10.3/png-0.13.8.1-87d70594/lib -L/usr/local/Cellar/pango/1.48.0/lib -L/usr/local/Cellar/cairo/1.16.0_4/lib -L/usr/local/Cellar/glib/2.66.4_1/lib -L/usr/local/opt/gettext/lib -L/usr/local/Cellar/harfbuzz/2.7.4/lib -lpangocairo-1.0 -lcairo -lpango-1.0 -lgobject-2.0 -lglib-2.0 -lintl -lharfbuzz -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/process-1.6.9.0 -L/Users/maoe/.cabal/store/ghc-8.10.3/g-0.13.8.1-7e34b365/lib -L/usr/local/Cellar/glib/2.66.4_1/lib -L/usr/local/opt/gettext/lib -lgio-2.0 -lgobject-2.0 -lglib-2.0 -lintl -L/Users/maoe/.cabal/store/ghc-8.10.3/glb-0.13.8.1-9b8ffb39/lib -L/usr/local/Cellar/glib/2.66.4_1/lib -L/usr/local/opt/gettext/lib -lgobject-2.0 -lglib-2.0 -lintl -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/directory-1.3.6.0 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/unix-2.7.2.2 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/time-1.9.3 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/filepath-1.4.2.1 -L/Users/maoe/.cabal/store/ghc-8.10.3/cr-0.13.8.1-81ef95d4/lib -L/usr/local/Cellar/cairo/1.16.0_4/lib -lz -lcairo -L/Users/maoe/.cabal/store/ghc-8.10.3/tf8-strng-1.0.2-fe407f76/lib -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/text-1.2.4.1 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/template-haskell-2.16.0.0 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/pretty-1.1.3.6 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/ghc-boot-th-8.10.3 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/mtl-2.2.2 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/transformers-0.5.6.2 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/binary-0.8.8.0 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/containers-0.6.2.1 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/bytestring-0.10.12.0 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/deepseq-1.4.4.0 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/array-0.5.4.0 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/base-4.14.1.0 -liconv -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/integer-gmp-1.0.3.0 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/ghc-prim-0.6.1 -L/Users/maoe/.ghcup/ghc/8.10.3/lib/ghc-8.10.3/rts -lm -ldl
error: ld: warning: dylib (/usr/local/Cellar/glib/2.66.4_1/lib/libgthread-2.0.dylib) was built for newer macOS version (11.0) than being linked (10.16)
ld: warning: dylib (/usr/local/Cellar/gtk+/2.24.33/lib/libgdk-quartz-2.0.dylib) was built for newer macOS version (11.0) than being linked (10.16)
ld: warning: dylib (/usr/local/Cellar/gtk+/2.24.33/lib/libgtk-quartz-2.0.dylib) was built for newer macOS version (11.0) than being linked (10.16)
ld: warning: dylib (/usr/local/Cellar/harfbuzz/2.7.4/lib/libharfbuzz.dylib) was built for newer macOS version (11.0) than being linked (10.16)
ld: warning: dylib (/usr/local/Cellar/cairo/1.16.0_4/lib/libcairo.dylib) was built for newer macOS version (11.0) than being linked (10.16)
ld: warning: dylib (/usr/local/Cellar/glib/2.66.4_1/lib/libgobject-2.0.dylib) was built for newer macOS version (11.0) than being linked (10.16)
ld: warning: dylib (/usr/local/Cellar/glib/2.66.4_1/lib/libgio-2.0.dylib) was built for newer macOS version (11.0) than being linked (10.16)
ld: warning: dylib (/usr/local/Cellar/glib/2.66.4_1/lib/libglib-2.0.dylib) was built for newer macOS version (11.0) than being linked (10.16)
duplicate symbol '___sputc' in:
    dist/build/Graphics/UI/Gtk/Embedding/Embedding_hsc_make.o
    dist/build/Graphics/UI/Gtk/Embedding/Embedding_hsc_utils.o
ld: 1 duplicate symbol for architecture x86_64
collect2: error: ld returned 1 exit status

cabal: Failed to build gtk-0.15.5 (which is required by threadscope-0.2.13).
See the build log above for details.
maoe commented 3 years ago

It builds fine if I remove the use of gcc-9 in cabal.project.osx.

This branch looks good to me. As for CI we need to finish #113.

markus1189 commented 3 years ago

Awesome! Thanks :sunglasses:

markus1189 commented 3 years ago

Can you make a new release or edit the cabal metadata on hackage?

maoe commented 3 years ago

Let me check if it builds fine on Windows. I expect I have some time tonight or tomorrow morning.

maoe commented 3 years ago

Just uploaded a new version to hackage.

markus1189 commented 3 years ago

Thanks! :heart: