diff options
| -rw-r--r-- | README.md | 1 | ||||
| -rw-r--r-- | objc_darwin.h | 10 |
2 files changed, 6 insertions, 5 deletions
@@ -9,6 +9,7 @@ ui aims to run on all supported versions of supported platforms. To be more prec * Windows: Windows 2000 or newer. The Windows backend uses package `syscall` and calls Windows DLLs directly, so does not rely on cgo. * Mac OS X: Mac OS X 10.6 (Snow Leopard) or newer. Objective-C dispatch is done by interfacing with libobjc directly, and thus this uses cgo. + * Note: you will need Go 1.3 or newer for this verison, as it uses a single .m file due to technical restrictions (read the comments in `bleh_darwin.m` for details), and earlier versions of Go do not auto-build .m files. * Other Unixes: The Unix backend uses GTK+, and thus cgo. It requires GTK+ 3.4 or newer; for Ubuntu this means 12.04 LTS (Precise Pangolin) at minimum. Check your distribution. ui itself has no outside Go package dependencies; it is entirely self-contained. diff --git a/objc_darwin.h b/objc_darwin.h index 1208e0e..e2d9d92 100644 --- a/objc_darwin.h +++ b/objc_darwin.h @@ -26,7 +26,7 @@ extern Class NilClass; /* for listbox_darwin.go */ extern id *_NSObservedObjectKey; -inline id objc_msgSend_noargs(id obj, SEL sel) +static inline id objc_msgSend_noargs(id obj, SEL sel) { return objc_msgSend(obj, sel); } @@ -52,25 +52,25 @@ extern uintptr_t objc_msgSend_uintret_noargs(id objc, SEL sel); extern intptr_t objc_msgSend_intret_noargs(id obj, SEL sel); #define m1(name, type1) \ - inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a) \ + static inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a) \ { \ return objc_msgSend(obj, sel, a); \ } #define m2(name, type1, type2) \ - inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a, type2 b) \ + static inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a, type2 b) \ { \ return objc_msgSend(obj, sel, a, b); \ } #define m3(name, type1, type2, type3) \ - inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a, type2 b, type3 c) \ + static inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a, type2 b, type3 c) \ { \ return objc_msgSend(obj, sel, a, b, c); \ } #define m4(name, type1, type2, type3, type4) \ - inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a, type2 b, type3 c, type4 d) \ + static inline id objc_msgSend_ ## name (id obj, SEL sel, type1 a, type2 b, type3 c, type4 d) \ { \ return objc_msgSend(obj, sel, a, b, c, d); \ } |
