86 lines
2.2 KiB
Python
86 lines
2.2 KiB
Python
import os
|
|
import glob
|
|
import shutil
|
|
import re
|
|
|
|
# The list of items
|
|
files = glob.glob('libs/main/*/*.h', recursive=True)
|
|
files += glob.glob('libs/main/*.h', recursive=True)
|
|
|
|
tdir = './include/'
|
|
|
|
if os.path.exists(tdir):
|
|
shutil.rmtree(tdir)
|
|
|
|
os.mkdir(tdir)
|
|
|
|
for filename in files:
|
|
shutil.copy(filename, tdir)
|
|
|
|
with open(tdir+'pip_defs.h', 'w') as f:
|
|
f.write('// This file was generated by PlatformIO, don`t edit it!')
|
|
|
|
with open(tdir+'pip_export.h', 'w') as f:
|
|
f.write('''
|
|
#ifndef PIP_EXPORT_H
|
|
#define PIP_EXPORT_H
|
|
|
|
# define PIP_EXPORT
|
|
# define PIP_NO_EXPORT
|
|
|
|
|
|
#ifndef PIP_DEPRECATED
|
|
# define PIP_DEPRECATED __attribute__ ((__deprecated__))
|
|
#endif
|
|
|
|
#ifndef PIP_DEPRECATED_EXPORT
|
|
# define PIP_DEPRECATED_EXPORT PIP_EXPORT PIP_DEPRECATED
|
|
#endif
|
|
|
|
#ifndef PIP_DEPRECATED_NO_EXPORT
|
|
# define PIP_DEPRECATED_NO_EXPORT PIP_NO_EXPORT PIP_DEPRECATED
|
|
#endif
|
|
|
|
#endif /* PIP_EXPORT_H */
|
|
''')
|
|
|
|
version_h = '''
|
|
#ifndef PIP_VERSION_H
|
|
#define PIP_VERSION_H
|
|
|
|
|
|
// Project
|
|
|
|
#define PIP_VERSION_MAJOR ${VERSION_MAJOR}
|
|
#define PIP_VERSION_MINOR ${VERSION_MINOR}
|
|
#define PIP_VERSION_REVISION ${VERSION_REVISION}
|
|
#define PIP_VERSION_BUILD 0
|
|
#define PIP_VERSION_SUFFIX \"${VERSION_SUFFIX}\"
|
|
#define PIP_VERSION_NAME \"${VERSION}\"
|
|
#define PIP_MAKE_VERSION(major, minor, revision) ((major << 16) | (minor << 8) | revision)
|
|
#define PIP_VERSION PIP_MAKE_VERSION(PIP_VERSION_MAJOR, PIP_VERSION_MINOR, PIP_VERSION_REVISION)
|
|
|
|
#endif // PIP_VERSION_H
|
|
'''
|
|
|
|
with open('CMakeLists.txt') as cm:
|
|
str = cm.read()
|
|
v_major = re.findall(r'pip_MAJOR\s+(\d+)\)', str)
|
|
v_minor = re.findall(r'pip_MINOR\s+(\d+)\)', str)
|
|
v_rev = re.findall(r'pip_REVISION\s+(\d+)\)', str)
|
|
v_suffix = re.findall(r'pip_SUFFIX\s+(\w+)\)', str)
|
|
ver = ''
|
|
ver = v_major[0]+'.'+v_minor[0]+'.'+v_rev[0]
|
|
version_h.replace('${VERSION_MAJOR}', v_major[0])
|
|
version_h.replace('${VERSION_MINOR}', v_minor[0])
|
|
version_h.replace('${VERSION_REVISION}', v_rev[0])
|
|
if len(v_suffix):
|
|
ver += v_suffix[0]
|
|
version_h.replace('${VERSION_SUFFIX}', v_suffix[0])
|
|
else:
|
|
version_h.replace('${VERSION_SUFFIX}', '')
|
|
print('PIP version = '+ver)
|
|
with open(tdir+'pip_version.h', 'w') as f:
|
|
f.write(version_h)
|
|
|