|
| 1 | +#! /bin/sh |
| 2 | +# vim_cv_terminfo = ?? yes or no ?? If yes, will have to set it |
| 3 | +# vim_cv_stat_ignores_slash = unknown. Test with yes, rerun with no |
| 4 | +# All stuff with tgetent / terminfo will have to be hardcoded |
| 5 | +# tty_group too. |
| 6 | +# vim_cv_memmove_handles_overlap = set to no for safety |
| 7 | +# vim_cv_memcpy_handles_overlap = same |
| 8 | + |
| 9 | +# 1) configure |
| 10 | +./configure vim_cv_toupper_broken=no vim_cv_terminfo=no vim_cv_tgetent=zero vim_cv_memmove_handles_overlap=no vim_cv_memcpy_handles_overlap=no vim_cv_bcopy_handles_overlap=no vim_cv_tty_group=world vim_cv_stat_ignores_slash=yes vim_cv_getcwd_broken=no --with-tlib=ncurses --with-features=big --enable-terminal CC=clang CXX=clang++ CFLAGS="-DEXITFREE -g2 -mios-simulator-version-min=11.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/ -fembed-bitcode" CPPFLAGS="-DEXITFREE -g2 -mios-simulator-version-min=11.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/" CXXFLAGS="-DEXITFREE -g2 -mios-simulator-version-min=11.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/ -fembed-bitcode" LDFLAGS="-g2 -shared -mios-simulator-version-min=11.0 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/ -fembed-bitcode" --build=x86_64-apple-darwin --host=armv7-apple-darwin |
| 11 | + |
| 12 | +# 2) make. This creates ./src/vim, a Mach-O 64-bit dynamically linked shared library for arm64. |
| 13 | +make |
| 14 | + |
| 15 | +# 3) |
| 16 | +echo "Creating: " Frameworks/vim.framework |
| 17 | +framework=vim |
| 18 | +libraryFile=src/vim |
| 19 | +rm -rf Frameworks/$framework.framework |
| 20 | +mkdir -p Frameworks/$framework.framework |
| 21 | +cp $libraryFile Frameworks/$framework.framework/$framework |
| 22 | +cp basic_Info.plist Frameworks/$framework.framework/Info.plist |
| 23 | +plutil -replace CFBundleExecutable -string $framework Frameworks/$framework.framework/Info.plist |
| 24 | +plutil -replace CFBundleName -string $framework Frameworks/$framework.framework/Info.plist |
| 25 | +# underscore is not allowed in CFBundleIdentifier: |
| 26 | +signature=${framework//_/-} |
| 27 | +plutil -replace CFBundleIdentifier -string Nicolas-Holzschuch.$signature Frameworks/$framework.framework/Info.plist |
| 28 | +install_name_tool -id @rpath/$framework.framework/$framework Frameworks/$framework.framework/$framework |
| 29 | + |
| 30 | + |
| 31 | +# DONE: add LDFLAGS |
| 32 | +# DONE: compile as dylib, not executable |
| 33 | +# DONE: add ios_system |
| 34 | +# DONE: test inside a-shell |
| 35 | +# DONE: forward input |
| 36 | +# DONE: memory issues (again) |
| 37 | +# DONE: remove tgetstr, tputs, etc; |
| 38 | +# DONE: replace fork with ios_fork, wait for streams. |
| 39 | +# DONE: provide missing termcap functions, from hterm POV |
| 40 | +# DONE: see termlib.c for help |
| 41 | +# TODO: add Python & Lua support (FEAT_PYTHON, FEAT_LUA...) |
| 42 | +# DONE: remove /bin/sh from shell commands |
| 43 | +# DONE: send resize events to vim, one way or another |
| 44 | +# TODO: avoid compose events in command mode. HOW? (sucks for everyone, though) |
| 45 | +# TODO: visual bell |
| 46 | + |
| 47 | +# a-shell: |
| 48 | +# DONE: remove insert mode in hterm.html, always in overwrite |
| 49 | +# TODO: empjis need multiple characters. CJK works here, why not emojis? |
| 50 | +# TODO: move javascript out of hterm.html, into myown.js |
| 51 | +# Check that toolbar stays on always (?) |
| 52 | + |
0 commit comments