mirror of
https://github.com/vlang/v.git
synced 2023-08-10 21:13:21 +03:00
thirdparty/ui for macOS (temporary)
This commit is contained in:
@@ -172,8 +172,20 @@ fn (v mut V) cc() {
|
||||
libs += ' ' + path
|
||||
} else {
|
||||
println('$path not found... building module $imp')
|
||||
os.system('$vexe build module vlib${os.path_separator}$imp_path')
|
||||
if path.ends_with('vlib/ui.o') {
|
||||
vdir := os.dir(vexe)
|
||||
println('copying ui...')
|
||||
os.cp('$vdir/thirdparty/ui/ui.o', path)
|
||||
os.cp('$vdir/thirdparty/ui/ui.vh', v_modules_path +
|
||||
'/vlib/ui.vh')
|
||||
|
||||
} else {
|
||||
os.system('$vexe build module vlib${os.path_separator}$imp_path')
|
||||
}
|
||||
}
|
||||
if path.ends_with('vlib/ui.o') {
|
||||
a << '-framework Cocoa -framework Carbon'
|
||||
}
|
||||
}
|
||||
}
|
||||
if v.pref.sanitize {
|
||||
|
||||
@@ -9,7 +9,8 @@ module darwin
|
||||
struct C.NSString { }
|
||||
|
||||
// macOS and iOS helpers
|
||||
pub fn nsstring(s string) *C.NSString {
|
||||
//pub fn nsstring(s string) *C.NSString {
|
||||
pub fn nsstring(s string) voidptr {
|
||||
// println('ns $s len=$s.len')
|
||||
# return [ [ NSString alloc ] initWithBytesNoCopy:s.str length:s.len
|
||||
# encoding:NSUTF8StringEncoding freeWhenDone: false];
|
||||
|
||||
@@ -126,6 +126,15 @@ pub fn mv(old, new string) {
|
||||
}
|
||||
}
|
||||
|
||||
// TODO implement actual cp()
|
||||
pub fn cp(old, new string) {
|
||||
$if windows {
|
||||
panic('not implemented')
|
||||
} $else {
|
||||
os.system('cp $old $new')
|
||||
}
|
||||
}
|
||||
|
||||
fn vfopen(path, mode string) *C.FILE {
|
||||
$if windows {
|
||||
return C._wfopen(path.to_wide(), mode.to_wide())
|
||||
|
||||
Reference in New Issue
Block a user