kivy-ios/kivy_ios/tools/biglink
Andre Miras 56431b6922 Moving to dedicated kivy_ios/ package directory
- updates all imports to prefix kivy_ios
- adds basic `setup.py` file
- adds a simple `toolchain.py` to the root folder for compat

Makes it possible to install kivy-ios from PyPI:
```
pip install kivy-ios
toolchain --help
```
Note the `rebuild_updated_recipes.py` is expected to fail as we
moved all the recipes.

This is a working, but unperfect iteration that come with limitations
we would address in subsequent pull requests, such as:
- the new usage is not yet documented
- CI is not testing the source distribution creation and install
- Continuous Delivery to PyPI is not in place
- `toolchain` binary is a bit too generic name
- we're still vendoring things under `tools/`
2020-05-03 23:29:41 +02:00

24 lines
708 B
Python
Executable file

#!/usr/bin/env python
import os
import sys
import subprocess
sofiles = []
for dir in sys.argv[2:]:
for fn in os.listdir(dir):
if fn.endswith(".so"):
fn = os.path.join(dir, fn)
if os.path.exists(fn + ".o") and os.path.exists(fn + ".libs"):
sofiles.append(fn)
args = [] # The raw argument list.
for fn in sofiles:
args.append(fn + ".o")
args.extend(open(fn + ".libs").read().split(" "))
unique_args = ' '.join(x for x in sorted(set(args)) if x.endswith('.so.o'))
print('Biglink create %s library' % sys.argv[1])
cmd = "ar -q %s %s" % (sys.argv[1], unique_args)
print('Binlinking: {}'.format(cmd))
subprocess.Popen(cmd, shell=True).communicate()