Moved to frameworks + extract list of commands
Release 2.1 of the ios_system libraries:
Contains a precompiled version of all the libraries and frameworks associated with ios_system:
https://github.com/holzschu/ios_system
https://github.com/holzschu/lib-tex
https://github.com/holzschu/ctags
https://github.com/holzschu/python_ios
https://github.com/holzschu/network_ios
https://github.com/holzschu/lua_ios
Three major changes:
- we now use frameworks instead of dynamic libraries; apparently naked dynamic libraries are forbidden on the AppStore (see issue #103 in OpenTerm: louisdh/openterm#103 )
- the list of commands and their associated libraries has been moved outside of the source code. So adding new commands can be done without having to recompile the ios_system framework.
- we removed calls to private APIs (there is now an automatic check on app submission).
Smaller changes:
-
New global variable:
sideLoading
. It is supposed to befalse
if you plan to release through the AppStore,true
if you're downloading software to your own device. Iffalse
, we load a smaller number of commands and output less debugging information. -
The command "groups" was removed.
-
There are two lists of commands, both of them under
Resources
:commandDictionary.plist
andextraCommandsDictionary.plist
. The former is always loaded, the latter only ifsideLoading
is true.
Both files have the following format:
<key>chksum</key>
<array>
<string>files.framework/files</string>
<string>chksum_main</string>
<string>o:</string>
<string>file</string>
</array>
As before, 2 versions of pre-compiled binaries available:
- release = iOS_system.framework and all the associated libraries. Useful when you're building an application, like shell, ivim...
- smallRelease = ios_system.framework + openssl.framework + libssh2.framework. Useful when you need to compile a new library.
The TeX libraries and ctags have not been converted to frameworks, as no application on the AppStore is using them currently. It might change in the future.