From 82d0efb92d7fdcb75bb9608e3a9ddb5465e721f0 Mon Sep 17 00:00:00 2001 From: Pietro Gagliardi Date: Wed, 6 Jan 2016 20:24:31 -0500 Subject: [PATCH] Re-enabled @executable_path and OS X linking now that the OS X build is fixed. Now I just have to figure out why it's not linking... --- README.md | 7 ++++--- link_darwin.go | 3 +-- main.go | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/README.md b/README.md index bc40ef2..b7742ea 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,6 @@ # This package is still very much WIP. -**Note: Due to [a bug in Go](https://github.com/golang/go/issues/13720) the OS X build is broken. Sorry about that.** - As of December 2015 the previous package ui API that has been around since this repo was started is no longer being supported. It is being replaced with a much more stable API built around my libui; see below. If you still want to use the old package ui, you can get the package under the `pre-libui` tag. Keep in mind that it's not stable, buggy, and **no longer supported**. If you do continue, make sure that instances of `ui.Window` escape to the heap to avoid some of the issues. @@ -11,8 +9,11 @@ If you still want to use the old package ui, you can get the package under the ` If you want to play around with this new package ui, you'll need to install libui manually. Clone that repo and `make` (with GNU make) libui, then: - On Windows, merely copy out\libui.dll to the root of this repo. + - Go 1.5 is adequate. - On OS X, copy out/libui.dylib to the root of this repo as libui.0.dylib and symlink it to libui.dylib + - You must also be running Go 1.6 from master or Beta 2 or newer due to more Go bugs. - On other Unixes, copy out/libui.so to the root of this repo as libui.so.0 and symlink it to libui.so + - Go 1.5 is adequate. and then copy ui.h to the top of this repo as well. (You may symlink any files instead of copying if so choose.) @@ -30,7 +31,7 @@ It runs on/requires: - Mac OS X: cgo, Mac OS X 10.7 and newer - other Unixes: cgo, GTK+ 3.4 and newer -It also requires Go 1.5 or newer (due to various bugs in cgo that were fixed only starting with 1.5). +It also requires Go 1.6 or newer (due to various bugs in cgo that were fixed only starting with 1.6). (this README needs some work) diff --git a/link_darwin.go b/link_darwin.go index 9c5748b..ccf2942 100644 --- a/link_darwin.go +++ b/link_darwin.go @@ -2,8 +2,7 @@ package ui -// #cgo LDFLAGS: -L${SRCDIR} -lui -framework CoreFoundation -lpthread -// //TODO -rpath @executable_path +// #cgo LDFLAGS: -L${SRCDIR} -lui -framework CoreFoundation -lpthread -rpath @executable_path // /* (thanks to http://jorgen.tjer.no/post/2014/05/20/dt-rpath-ld-and-at-rpath-dyld/ for the @executable_path clarifiaction) */ // #include // #include diff --git a/main.go b/main.go index de7b1ca..f6109f3 100644 --- a/main.go +++ b/main.go @@ -18,7 +18,7 @@ import ( // { // uiQueueMain(doQueued, x); // } -// static inline int realOnShouldQuit(void) +// static inline void realOnShouldQuit(void) // { // uiOnShouldQuit(doOnShouldQuit, NULL); // }