mirror of
https://github.com/cappuccino/cappuccino.git
synced 2026-08-25 13:07:02 +00:00
51 lines
1.5 KiB
Python
Executable File
51 lines
1.5 KiB
Python
Executable File
import sys, os
|
|
from mod_pbxproj import XcodeProject
|
|
|
|
XCODESUPPORTFOLDER = ".XcodeSupport"
|
|
|
|
def add_file(project, shadowGroup, sourceGroup, shadowPath, sourcePath, projectBaseURL):
|
|
project.add_file(shadowPath, parent=shadowGroup)
|
|
project.add_file(sourcePath, parent=sourceGroup)
|
|
project.save()
|
|
|
|
def remove_file(project, shadowGroup, sourceGroup, shadowPath, sourcePath, projectBaseURL):
|
|
project.remove_file("%s/%s" % (XCODESUPPORTFOLDER, os.path.basename(shadowPath)), parent=shadowGroup)
|
|
project.remove_file(os.path.relpath(sourcePath, projectBaseURL), parent=sourceGroup)
|
|
project.save()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
|
|
action = sys.argv[1]
|
|
PBXProjectFilePath = sys.argv[2]
|
|
shadowFilePath = sys.argv[3]
|
|
sourceFilePath = sys.argv[4]
|
|
projectBaseURL = sys.argv[5]
|
|
|
|
project = XcodeProject.Load(PBXProjectFilePath)
|
|
|
|
shadowGroup = project.get_or_create_group('Classes')
|
|
sourceGroup = project.get_or_create_group('Sources')
|
|
|
|
if "main.m" in shadowFilePath:
|
|
sys.exit(0)
|
|
|
|
files = project.get_files_by_os_path("%s/%s" % (XCODESUPPORTFOLDER, os.path.basename(shadowFilePath)))
|
|
|
|
if action == "add" and len(files) == 0:
|
|
add_file(project, shadowGroup, sourceGroup, shadowFilePath, sourceFilePath, projectBaseURL)
|
|
|
|
elif action == "remove" and len(files) == 1:
|
|
remove_file(project, shadowGroup, sourceGroup, shadowFilePath, sourceFilePath, projectBaseURL)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|