diff --git a/.gitignore b/.gitignore index 594ef66..313e97c 100644 --- a/.gitignore +++ b/.gitignore @@ -29,3 +29,4 @@ DerivedData # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control # #Pods/ +.BuildVersion.xcconfig diff --git a/package/BuildAndPackage.command b/package/BuildAndPackage.command index 0eeec09..3e69ec0 100755 --- a/package/BuildAndPackage.command +++ b/package/BuildAndPackage.command @@ -165,7 +165,7 @@ then fi fi -PKG_VERSION=$(/usr/libexec/PlistBuddy -c "print CFBundleShortVersionString" "${PROJECT_DIR}/Hello IT/Info.plist") +MARKETING_VERSION=$(sed -n '/MARKETING_VERSION/{s/MARKETING_VERSION = //;s/;//;s/^[[:space:]]*//;p;q;}' "${PROJECT_DIR}/Hello-IT.xcconfig") if [[ "$CURRENT_BRANCH" == release* ]] then @@ -173,15 +173,17 @@ then VERSION_FROM_BRANCH=$(echo "${CURRENT_BRANCH}" | awk -F'/' '{print $2}') if [[ "$VERSION_FROM_BRANCH" =~ ^[0-9]+\.[0-9]+ ]] then - PKG_VERSION=$VERSION_FROM_BRANCH - /usr/libexec/PlistBuddy -c "Set CFBundleShortVersionString $PKG_VERSION" "${PROJECT_DIR}/Hello IT/Info.plist" - git add "${PROJECT_DIR}/Hello IT/Info.plist" - git commit -m "Update app version number according to release branch" + MARKETING_VERSION=$VERSION_FROM_BRANCH + sed -i '' "/MARKETING_VERSION/c\\ +MARKETING_VERSION = ${MARKETING_VERSION} +" "${PROJECT_DIR}/Hello-IT.xcconfig" + git add "${PROJECT_DIR}/Hello-IT.xcconfig" + git commit -m "Update marketing version number according to release branch" fi fi BASE_RELEASE_LOCATION="${GIT_ROOT_DIR}/package/build" -RELEASE_LOCATION="${BASE_RELEASE_LOCATION}/${PKG_VERSION}-${CONFIGURATION}" +RELEASE_LOCATION="${BASE_RELEASE_LOCATION}/${MARKETING_VERSION}-${CONFIGURATION}" RELEASE_PRODUCT_LOCATION="${RELEASE_LOCATION}/Products" RELEASE_DSYM_LOCATION="${RELEASE_LOCATION}/dSYM" @@ -206,7 +208,7 @@ echo "####### Build project" echo "### Start building Hello IT" -xcodebuild -UseModernBuildSystem=NO -quiet -project "${PROJECT_DIR}/Hello IT.xcodeproj" -configuration ${CONFIGURATION} -target "Hello IT" CONFIGURATION_TEMP_DIR="${BUILT_PRODUCTS_DIR}/Intermediates" CONFIGURATION_BUILD_DIR="${BUILT_PRODUCTS_DIR}/Products" DWARF_DSYM_FOLDER_PATH="${BUILT_PRODUCTS_DIR}/dSYM" OTHER_CODE_SIGN_FLAGS="--timestamp" +xcodebuild -UseModernBuildSystem=NO -arch x86_64 -arch arm64 ONLY_ACTIVE_ARCH=NO -quiet -project "${PROJECT_DIR}/Hello IT.xcodeproj" -configuration ${CONFIGURATION} -target "Hello IT" CONFIGURATION_TEMP_DIR="${BUILT_PRODUCTS_DIR}/Intermediates" CONFIGURATION_BUILD_DIR="${BUILT_PRODUCTS_DIR}/Products" DWARF_DSYM_FOLDER_PATH="${BUILT_PRODUCTS_DIR}/dSYM" OTHER_CODE_SIGN_FLAGS="--timestamp" if [[ $? != 0 ]]; then echo "Building failed" @@ -242,18 +244,18 @@ pkgbuild --analyze --root "${PKG_ROOT}" "${PBK_BUILD_COMPONENT}" /usr/libexec/PlistBuddy -c "Set 0:BundleIsRelocatable bool false" "${PBK_BUILD_COMPONENT}" #/usr/libexec/PlistBuddy -c "Print" "${PBK_BUILD_COMPONENT}" -pkgbuild --component-plist "${PBK_BUILD_COMPONENT}" --sign "${DEVELOPER_ID_INSTALLER}" --root "${PKG_ROOT}" --scripts "${GIT_ROOT_DIR}/package/pkg_scripts" --identifier "com.github.ygini.hello-it" --version "${PKG_VERSION}" "${RELEASE_LOCATION}/Hello-IT-${PKG_VERSION}-${CONFIGURATION}.pkg" +pkgbuild --component-plist "${PBK_BUILD_COMPONENT}" --sign "${DEVELOPER_ID_INSTALLER}" --root "${PKG_ROOT}" --scripts "${GIT_ROOT_DIR}/package/pkg_scripts" --identifier "com.github.ygini.hello-it" --version "${MARKETING_VERSION}" "${RELEASE_LOCATION}/Hello-IT-${MARKETING_VERSION}-${CONFIGURATION}.pkg" -productbuild --product "${GIT_ROOT_DIR}/package/requirements.plist" --sign "${DEVELOPER_ID_INSTALLER}" --version "${PKG_VERSION}" --package "${RELEASE_LOCATION}/Hello-IT-${PKG_VERSION}-${CONFIGURATION}.pkg" "${RELEASE_LOCATION}/Hello-IT-${PKG_VERSION}-${CONFIGURATION}-Distribution.pkg" +productbuild --product "${GIT_ROOT_DIR}/package/requirements.plist" --sign "${DEVELOPER_ID_INSTALLER}" --version "${MARKETING_VERSION}" --package "${RELEASE_LOCATION}/Hello-IT-${MARKETING_VERSION}-${CONFIGURATION}.pkg" "${RELEASE_LOCATION}/Hello-IT-${MARKETING_VERSION}-${CONFIGURATION}-Distribution.pkg" if [[ $? != 0 ]]; then echo "Package creation failed" exit 1 fi -rm "${RELEASE_LOCATION}/Hello-IT-${PKG_VERSION}-${CONFIGURATION}.pkg" +rm "${RELEASE_LOCATION}/Hello-IT-${MARKETING_VERSION}-${CONFIGURATION}.pkg" -notarizePayloadWithBundleID "${RELEASE_LOCATION}/Hello-IT-${PKG_VERSION}-${CONFIGURATION}-Distribution.pkg" "com.github.ygini.hello-it" +notarizePayloadWithBundleID "${RELEASE_LOCATION}/Hello-IT-${MARKETING_VERSION}-${CONFIGURATION}-Distribution.pkg" "com.github.ygini.hello-it" rm -rf "${PKG_ROOT}" diff --git a/src/HITDevKit/HITDevKit.xcconfig b/src/HITDevKit/HITDevKit.xcconfig new file mode 100644 index 0000000..0bb0f6e --- /dev/null +++ b/src/HITDevKit/HITDevKit.xcconfig @@ -0,0 +1,12 @@ +// +// HITDevKit.xcconfig +// HITDevKit +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../Hello-IT.xcconfig" diff --git a/src/HITDevKit/HITDevKit.xcodeproj/project.pbxproj b/src/HITDevKit/HITDevKit.xcodeproj/project.pbxproj index abc0b9a..c35a443 100644 --- a/src/HITDevKit/HITDevKit.xcodeproj/project.pbxproj +++ b/src/HITDevKit/HITDevKit.xcodeproj/project.pbxproj @@ -55,6 +55,7 @@ E1B2C9061B593957005A9936 /* Warning.tiff */ = {isa = PBXFileReference; lastKnownFileType = image.tiff; path = Warning.tiff; sourceTree = ""; }; E1B2C9141B5941AA005A9936 /* HITPeriodicPlugin.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPeriodicPlugin.h; sourceTree = ""; }; E1B2C9151B5941AA005A9936 /* HITPeriodicPlugin.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPeriodicPlugin.m; sourceTree = ""; }; + F8886A0E262CC1F70039DE6C /* HITDevKit.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = HITDevKit.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -79,6 +80,7 @@ E1B2C8C71B59351B005A9936 = { isa = PBXGroup; children = ( + F8886A0E262CC1F70039DE6C /* HITDevKit.xcconfig */, E1B2C8D31B59351B005A9936 /* HITDevKit */, E1B2C8E01B59351B005A9936 /* HITDevKitTests */, E1B2C8D21B59351B005A9936 /* Products */, @@ -164,7 +166,6 @@ isa = PBXNativeTarget; buildConfigurationList = E1B2C8E71B59351B005A9936 /* Build configuration list for PBXNativeTarget "HITDevKit" */; buildPhases = ( - F8B50A231D1ECEF9003CD614 /* GitVersion */, E1B2C8CC1B59351B005A9936 /* Sources */, E1B2C8CD1B59351B005A9936 /* Frameworks */, E1B2C8CE1B59351B005A9936 /* Headers */, @@ -203,7 +204,7 @@ E1B2C8C81B59351B005A9936 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1140; + LastUpgradeCheck = 1240; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E1B2C8D01B59351B005A9936 = { @@ -258,23 +259,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A231D1ECEF9003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E1B2C8CC1B59351B005A9936 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -308,6 +292,7 @@ /* Begin XCBuildConfiguration section */ E1B2C8E51B59351B005A9936 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A0E262CC1F70039DE6C /* HITDevKit.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -329,6 +314,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -365,6 +351,7 @@ }; E1B2C8E61B59351B005A9936 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A0E262CC1F70039DE6C /* HITDevKit.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -386,6 +373,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/HITDevKit/HITDevKit/HITAdvancedPlugin.h b/src/HITDevKit/HITDevKit/HITAdvancedPlugin.h index 5e6d259..f867a49 100644 --- a/src/HITDevKit/HITDevKit/HITAdvancedPlugin.h +++ b/src/HITDevKit/HITDevKit/HITAdvancedPlugin.h @@ -6,7 +6,7 @@ // Copyright (c) 2015 Yoann Gini (Open Source Project). All rights reserved. // -#import "HITSimplePlugin.h" +#import @interface HITAdvancedPlugin : HITSimplePlugin diff --git a/src/HITDevKit/HITDevKit/HITAdvancedPlugin.m b/src/HITDevKit/HITDevKit/HITAdvancedPlugin.m index fa1dd75..a659f6c 100644 --- a/src/HITDevKit/HITDevKit/HITAdvancedPlugin.m +++ b/src/HITDevKit/HITDevKit/HITAdvancedPlugin.m @@ -46,7 +46,7 @@ - (void)updateMenuItemState { break; case HITPluginTestStateNone: default: - self.menuItem.image = nil; + self.menuItem.image = [self imageForMenuItem]; notificationMessage = [self localizedString:[self.settings objectForKey:kHITNotificationMessageForNoneKey]]; break; } diff --git a/src/HITDevKit/HITDevKit/HITSimplePlugin.h b/src/HITDevKit/HITDevKit/HITSimplePlugin.h index d8f0570..79bc206 100644 --- a/src/HITDevKit/HITDevKit/HITSimplePlugin.h +++ b/src/HITDevKit/HITDevKit/HITSimplePlugin.h @@ -10,13 +10,14 @@ #import #define kHITSimplePluginTitleKey @"title" +#define kHITSimplePluginComputedTitleKey @"computedTitle" #define kHITSimplePluginImagePathKey @"imagePath" #define kHITSimplePluginImageBaseNameKey @"imageBaseName" @interface HITSimplePlugin : HITBasicPlugin - @end @interface HITSimplePlugin (MustBeDefinedInSubclass) - (IBAction)mainAction:(id)sender; -@end \ No newline at end of file +-(NSImage *)imageForMenuItem; +@end diff --git a/src/HITDevKit/HITDevKit/HITSimplePlugin.m b/src/HITDevKit/HITDevKit/HITSimplePlugin.m index 8cf293c..008dbbc 100644 --- a/src/HITDevKit/HITDevKit/HITSimplePlugin.m +++ b/src/HITDevKit/HITDevKit/HITSimplePlugin.m @@ -10,19 +10,50 @@ #import +@interface HITSimplePlugin () +@property NSString *script; +@property BOOL scriptChecked; +- (void)updateWithComputedTitle:(NSMenuItem *)menuItem; +@end + +#define kHITPCustomScriptsPath @"/Library/Application Support/com.github.ygini.hello-it/CustomScripts" +#define kHITPDenyUserWritableScript @"denyUserWritableScript" + @implementation HITSimplePlugin --(NSMenuItem *)prepareNewMenuItem { - NSString *title = [self localizedString:[self.settings objectForKey:kHITSimplePluginTitleKey]]; - if (!title) { - title = @""; + +- (instancetype)initWithSettings:(NSDictionary*)settings +{ + self = [super initWithSettings:settings]; + if (self) { + + if ([[settings objectForKey:kHITSimplePluginComputedTitleKey] length] > 0) { + _script = [[NSString stringWithFormat:kHITPCustomScriptsPath] stringByAppendingPathComponent:[settings objectForKey:kHITSimplePluginComputedTitleKey]]; + + asl_log(NULL, NULL, ASL_LEVEL_INFO, "Loading script based plugin with script at path %s", [_script cStringUsingEncoding:NSUTF8StringEncoding]); + + if ([[NSFileManager defaultManager] fileExistsAtPath:_script]) { + if ([[NSFileManager defaultManager] isWritableFileAtPath:_script] && [[NSUserDefaults standardUserDefaults] boolForKey:kHITPDenyUserWritableScript]) { +#ifdef DEBUG + _scriptChecked = YES; +#else + _scriptChecked = NO; +#endif + asl_log(NULL, NULL, ASL_LEVEL_ERR, "Target script is writable, security restriction deny such a scenario %s", [_script cStringUsingEncoding:NSUTF8StringEncoding]); + } else { + _scriptChecked = YES; + } + } else { + _scriptChecked = NO; + asl_log(NULL, NULL, ASL_LEVEL_ERR, "Target script not accessible %s", [_script cStringUsingEncoding:NSUTF8StringEncoding]); + } + } + } - - NSMenuItem *menuItem = [[NSMenuItem alloc] initWithTitle:title - action:@selector(mainAction:) - keyEquivalent:@""]; - menuItem.target = self; - + return self; +} + +-(NSImage *)imageForMenuItem { NSString *imagePath = [self.settings objectForKey:kHITSimplePluginImagePathKey]; NSString *imageBaseName = [self.settings objectForKey:kHITSimplePluginImageBaseNameKey]; @@ -53,18 +84,81 @@ -(NSMenuItem *)prepareNewMenuItem { } if (imagePath) { - asl_log(NULL, NULL, ASL_LEVEL_INFO, "Menu item with title %s set with image at path %s.", [title cStringUsingEncoding:NSUTF8StringEncoding], [imagePath cStringUsingEncoding:NSUTF8StringEncoding]); + asl_log(NULL, NULL, ASL_LEVEL_INFO, "Menu item set with image at path %s.", [imagePath cStringUsingEncoding:NSUTF8StringEncoding]); NSImage *accessoryImage = [[NSImage alloc] initWithContentsOfFile:imagePath]; - if (accessoryImage) { - menuItem.image = accessoryImage; - } else { + if (!accessoryImage) { asl_log(NULL, NULL, ASL_LEVEL_ERR, "Impossible to load image at path %s.", [imagePath cStringUsingEncoding:NSUTF8StringEncoding]); } + + return accessoryImage; } + + return nil; +} + +-(NSMenuItem *)prepareNewMenuItem { + NSString *title = [self localizedString:[self.settings objectForKey:kHITSimplePluginTitleKey]]; + if (!title) { + title = @""; + } + + + NSMenuItem *menuItem = [[NSMenuItem alloc] initWithTitle:title + action:@selector(mainAction:) + keyEquivalent:@""]; + [self updateWithComputedTitle:menuItem]; + + menuItem.target = self; + + menuItem.image = [self imageForMenuItem]; return menuItem; } +- (void)updateWithComputedTitle:(NSMenuItem *)menuItem { + if (self.scriptChecked && self.allowedToRun) { + asl_log(NULL, NULL, ASL_LEVEL_INFO, "Get computed title with script %s", [self.script cStringUsingEncoding:NSUTF8StringEncoding]); + + [[NSOperationQueue mainQueue] addOperationWithBlock:^{ + NSTask *task = [[NSTask alloc] init]; + [task setLaunchPath:self.script]; + + [task setStandardOutput:[NSPipe pipe]]; + NSFileHandle *fileToRead = [[task standardOutput] fileHandleForReading]; + + dispatch_io_t stdoutChannel = dispatch_io_create(DISPATCH_IO_STREAM, [fileToRead fileDescriptor], dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^(int error) { + + }); + + __block BOOL firstLine = YES; + dispatch_io_read(stdoutChannel, 0, SIZE_MAX, dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_BACKGROUND, 0), ^(bool done, dispatch_data_t data, int error) { + if (firstLine) { + firstLine = NO; + } else { + return; + } + + NSData *stdoutData = (NSData *)data; + + NSString *stdoutString = [[NSString alloc] initWithData:stdoutData encoding:NSUTF8StringEncoding]; + + NSArray *stdoutLines = [stdoutString componentsSeparatedByString:@"\n"]; + menuItem.title = [stdoutLines firstObject]; + }); + + @try { + [task launch]; + + [task waitUntilExit]; + + asl_log(NULL, NULL, ASL_LEVEL_INFO, "Script exited with code %i", [task terminationStatus]); + } @catch (NSException *exception) { + asl_log(NULL, NULL, ASL_LEVEL_ERR, "Script failed to run: %s", [[exception reason] UTF8String]); + } + }]; + } +} + @end diff --git a/src/HITDevKit/HITDevKit/Info.plist b/src/HITDevKit/HITDevKit/Info.plist index d1f54ee..2106328 100644 --- a/src/HITDevKit/HITDevKit/Info.plist +++ b/src/HITDevKit/HITDevKit/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) NSHumanReadableCopyright Copyright © 2015 Yoann Gini (Open Source Project). All rights reserved. NSPrincipalClass diff --git a/src/HITDevKit/HITDevKitTests/Info.plist b/src/HITDevKit/HITDevKitTests/Info.plist index ba72822..802c540 100644 --- a/src/HITDevKit/HITDevKitTests/Info.plist +++ b/src/HITDevKit/HITDevKitTests/Info.plist @@ -15,10 +15,10 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 1 + $(BUILD_VERSION) diff --git a/src/HITPlugins/HITPlugins/Info.plist b/src/HITPlugins/HITPlugins/Info.plist index cbf38e5..fd811a8 100644 --- a/src/HITPlugins/HITPlugins/Info.plist +++ b/src/HITPlugins/HITPlugins/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - $(CURRENT_PROJECT_VERSION) + $(BUILD_VERSION) NSHumanReadableCopyright Copyright © 2015 Yoann Gini (Open Source Project). All rights reserved. NSPrincipalClass diff --git a/src/HITPlugins/HITPluginsTests/Info.plist b/src/HITPlugins/HITPluginsTests/Info.plist index 4d1fd44..5b524fa 100644 --- a/src/HITPlugins/HITPluginsTests/Info.plist +++ b/src/HITPlugins/HITPluginsTests/Info.plist @@ -15,10 +15,10 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 1 + $(BUILD_VERSION) diff --git a/src/Hello IT.xcodeproj/project.pbxproj b/src/Hello IT.xcodeproj/project.pbxproj index 207e76a..45b6001 100644 --- a/src/Hello IT.xcodeproj/project.pbxproj +++ b/src/Hello IT.xcodeproj/project.pbxproj @@ -23,27 +23,9 @@ E1D068141B51D08F00567172 /* Hello_ITTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E1D068131B51D08F00567172 /* Hello_ITTests.m */; }; E1D0681F1B51D4B500567172 /* HITPluginsManager.m in Sources */ = {isa = PBXBuildFile; fileRef = E1D0681E1B51D4B500567172 /* HITPluginsManager.m */; }; F83294DD1F7736B5009DA574 /* ADPass.hitp in Copy Default Plugins */ = {isa = PBXBuildFile; fileRef = F83294B31F773078009DA574 /* ADPass.hitp */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - F8340B8C1C96CF9000C820D7 /* statusbar-dark.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B781C96CF9000C820D7 /* statusbar-dark.png */; }; - F8340B8D1C96CF9000C820D7 /* statusbar-dark@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B791C96CF9000C820D7 /* statusbar-dark@2x.png */; }; - F8340B8E1C96CF9000C820D7 /* statusbar-error-dark.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B7A1C96CF9000C820D7 /* statusbar-error-dark.png */; }; - F8340B8F1C96CF9000C820D7 /* statusbar-error-dark@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B7B1C96CF9000C820D7 /* statusbar-error-dark@2x.png */; }; - F8340B901C96CF9000C820D7 /* statusbar-error.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B7C1C96CF9000C820D7 /* statusbar-error.png */; }; - F8340B911C96CF9000C820D7 /* statusbar-error@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B7D1C96CF9000C820D7 /* statusbar-error@2x.png */; }; - F8340B921C96CF9000C820D7 /* statusbar-ok-dark.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B7E1C96CF9000C820D7 /* statusbar-ok-dark.png */; }; - F8340B931C96CF9000C820D7 /* statusbar-ok-dark@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B7F1C96CF9000C820D7 /* statusbar-ok-dark@2x.png */; }; - F8340B941C96CF9000C820D7 /* statusbar-ok.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B801C96CF9000C820D7 /* statusbar-ok.png */; }; - F8340B951C96CF9000C820D7 /* statusbar-ok@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B811C96CF9000C820D7 /* statusbar-ok@2x.png */; }; - F8340B961C96CF9000C820D7 /* statusbar-unavailable-dark.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B821C96CF9000C820D7 /* statusbar-unavailable-dark.png */; }; - F8340B971C96CF9000C820D7 /* statusbar-unavailable-dark@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B831C96CF9000C820D7 /* statusbar-unavailable-dark@2x.png */; }; - F8340B981C96CF9000C820D7 /* statusbar-unavailable.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B841C96CF9000C820D7 /* statusbar-unavailable.png */; }; - F8340B991C96CF9000C820D7 /* statusbar-unavailable@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B851C96CF9000C820D7 /* statusbar-unavailable@2x.png */; }; - F8340B9A1C96CF9000C820D7 /* statusbar-warning-dark.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B861C96CF9000C820D7 /* statusbar-warning-dark.png */; }; - F8340B9B1C96CF9000C820D7 /* statusbar-warning-dark@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B871C96CF9000C820D7 /* statusbar-warning-dark@2x.png */; }; - F8340B9C1C96CF9000C820D7 /* statusbar-warning.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B881C96CF9000C820D7 /* statusbar-warning.png */; }; - F8340B9D1C96CF9000C820D7 /* statusbar-warning@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B891C96CF9000C820D7 /* statusbar-warning@2x.png */; }; - F8340B9E1C96CF9000C820D7 /* statusbar.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B8A1C96CF9000C820D7 /* statusbar.png */; }; - F8340B9F1C96CF9000C820D7 /* statusbar@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = F8340B8B1C96CF9000C820D7 /* statusbar@2x.png */; }; F84238FF20C8748200FB5410 /* CachetHQComponent.hitp in Copy Default Plugins */ = {isa = PBXBuildFile; fileRef = F8D61B8A20C8731A00DE2453 /* CachetHQComponent.hitp */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; + F88869FD262CC1770039DE6C /* Hello-IT.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = F88869FC262CC1770039DE6C /* Hello-IT.xcconfig */; }; + F88869FE262CC1770039DE6C /* Hello-IT.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = F88869FC262CC1770039DE6C /* Hello-IT.xcconfig */; }; F89B593B1DA7DC350028D75F /* Reachability.m in Sources */ = {isa = PBXBuildFile; fileRef = F89B593A1DA7DC350028D75F /* Reachability.m */; }; F8F07637244EEFA200E3DF7B /* Command.hitp in Copy Default Plugins */ = {isa = PBXBuildFile; fileRef = F89A03522368A51D0059281B /* Command.hitp */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; /* End PBXBuildFile section */ @@ -298,26 +280,7 @@ E1D0681D1B51D4B500567172 /* HITPluginsManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPluginsManager.h; sourceTree = ""; }; E1D0681E1B51D4B500567172 /* HITPluginsManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPluginsManager.m; sourceTree = ""; }; F83294AE1F773076009DA574 /* ADPass.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = ADPass.xcodeproj; path = ADPass/ADPass.xcodeproj; sourceTree = ""; }; - F8340B781C96CF9000C820D7 /* statusbar-dark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-dark.png"; sourceTree = ""; }; - F8340B791C96CF9000C820D7 /* statusbar-dark@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-dark@2x.png"; sourceTree = ""; }; - F8340B7A1C96CF9000C820D7 /* statusbar-error-dark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-error-dark.png"; sourceTree = ""; }; - F8340B7B1C96CF9000C820D7 /* statusbar-error-dark@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-error-dark@2x.png"; sourceTree = ""; }; - F8340B7C1C96CF9000C820D7 /* statusbar-error.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-error.png"; sourceTree = ""; }; - F8340B7D1C96CF9000C820D7 /* statusbar-error@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-error@2x.png"; sourceTree = ""; }; - F8340B7E1C96CF9000C820D7 /* statusbar-ok-dark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-ok-dark.png"; sourceTree = ""; }; - F8340B7F1C96CF9000C820D7 /* statusbar-ok-dark@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-ok-dark@2x.png"; sourceTree = ""; }; - F8340B801C96CF9000C820D7 /* statusbar-ok.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-ok.png"; sourceTree = ""; }; - F8340B811C96CF9000C820D7 /* statusbar-ok@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-ok@2x.png"; sourceTree = ""; }; - F8340B821C96CF9000C820D7 /* statusbar-unavailable-dark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-unavailable-dark.png"; sourceTree = ""; }; - F8340B831C96CF9000C820D7 /* statusbar-unavailable-dark@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-unavailable-dark@2x.png"; sourceTree = ""; }; - F8340B841C96CF9000C820D7 /* statusbar-unavailable.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-unavailable.png"; sourceTree = ""; }; - F8340B851C96CF9000C820D7 /* statusbar-unavailable@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-unavailable@2x.png"; sourceTree = ""; }; - F8340B861C96CF9000C820D7 /* statusbar-warning-dark.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-warning-dark.png"; sourceTree = ""; }; - F8340B871C96CF9000C820D7 /* statusbar-warning-dark@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-warning-dark@2x.png"; sourceTree = ""; }; - F8340B881C96CF9000C820D7 /* statusbar-warning.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-warning.png"; sourceTree = ""; }; - F8340B891C96CF9000C820D7 /* statusbar-warning@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar-warning@2x.png"; sourceTree = ""; }; - F8340B8A1C96CF9000C820D7 /* statusbar.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = statusbar.png; sourceTree = ""; }; - F8340B8B1C96CF9000C820D7 /* statusbar@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "statusbar@2x.png"; sourceTree = ""; }; + F88869FC262CC1770039DE6C /* Hello-IT.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = "Hello-IT.xcconfig"; sourceTree = ""; }; F89A034C2368A51C0059281B /* Command.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Command.xcodeproj; path = Command/Command.xcodeproj; sourceTree = ""; }; F89B59391DA7DC350028D75F /* Reachability.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Reachability.h; sourceTree = ""; }; F89B593A1DA7DC350028D75F /* Reachability.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = Reachability.m; sourceTree = ""; }; @@ -438,6 +401,7 @@ E1D067F11B51D08E00567172 = { isa = PBXGroup; children = ( + F88869FC262CC1770039DE6C /* Hello-IT.xcconfig */, E1B2C8ED1B59351B005A9936 /* HITDevKit.xcodeproj */, E17743301B51E6E600A5B406 /* Plugins */, E1D067FC1B51D08E00567172 /* Hello IT */, @@ -461,7 +425,6 @@ F8ECE1732323970E00C17247 /* Hello IT.entitlements */, F89B59391DA7DC350028D75F /* Reachability.h */, F89B593A1DA7DC350028D75F /* Reachability.m */, - F86928FA1CA28B8800AB8E4C /* statusbar */, E1D067FF1B51D08E00567172 /* AppDelegate.h */, E1D068001B51D08E00567172 /* AppDelegate.m */, E1D0681D1B51D4B500567172 /* HITPluginsManager.h */, @@ -507,33 +470,6 @@ name = Products; sourceTree = ""; }; - F86928FA1CA28B8800AB8E4C /* statusbar */ = { - isa = PBXGroup; - children = ( - F8340B781C96CF9000C820D7 /* statusbar-dark.png */, - F8340B791C96CF9000C820D7 /* statusbar-dark@2x.png */, - F8340B7A1C96CF9000C820D7 /* statusbar-error-dark.png */, - F8340B7B1C96CF9000C820D7 /* statusbar-error-dark@2x.png */, - F8340B7C1C96CF9000C820D7 /* statusbar-error.png */, - F8340B7D1C96CF9000C820D7 /* statusbar-error@2x.png */, - F8340B7E1C96CF9000C820D7 /* statusbar-ok-dark.png */, - F8340B7F1C96CF9000C820D7 /* statusbar-ok-dark@2x.png */, - F8340B801C96CF9000C820D7 /* statusbar-ok.png */, - F8340B811C96CF9000C820D7 /* statusbar-ok@2x.png */, - F8340B821C96CF9000C820D7 /* statusbar-unavailable-dark.png */, - F8340B831C96CF9000C820D7 /* statusbar-unavailable-dark@2x.png */, - F8340B841C96CF9000C820D7 /* statusbar-unavailable.png */, - F8340B851C96CF9000C820D7 /* statusbar-unavailable@2x.png */, - F8340B861C96CF9000C820D7 /* statusbar-warning-dark.png */, - F8340B871C96CF9000C820D7 /* statusbar-warning-dark@2x.png */, - F8340B881C96CF9000C820D7 /* statusbar-warning.png */, - F8340B891C96CF9000C820D7 /* statusbar-warning@2x.png */, - F8340B8A1C96CF9000C820D7 /* statusbar.png */, - F8340B8B1C96CF9000C820D7 /* statusbar@2x.png */, - ); - name = statusbar; - sourceTree = ""; - }; F89A034D2368A51C0059281B /* Products */ = { isa = PBXGroup; children = ( @@ -558,7 +494,6 @@ isa = PBXNativeTarget; buildConfigurationList = E1D068171B51D08F00567172 /* Build configuration list for PBXNativeTarget "Hello IT" */; buildPhases = ( - E128992F1B59B4E800BF7FD6 /* GitVersion */, E1D067F61B51D08E00567172 /* Sources */, E1D067F71B51D08E00567172 /* Frameworks */, E1D067F81B51D08E00567172 /* Resources */, @@ -610,7 +545,7 @@ E1D067F21B51D08E00567172 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0940; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E1D067F91B51D08E00567172 = { @@ -805,28 +740,9 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - F8340B9C1C96CF9000C820D7 /* statusbar-warning.png in Resources */, - F8340B9D1C96CF9000C820D7 /* statusbar-warning@2x.png in Resources */, - F8340B951C96CF9000C820D7 /* statusbar-ok@2x.png in Resources */, - F8340B961C96CF9000C820D7 /* statusbar-unavailable-dark.png in Resources */, - F8340B921C96CF9000C820D7 /* statusbar-ok-dark.png in Resources */, - F8340B991C96CF9000C820D7 /* statusbar-unavailable@2x.png in Resources */, - F8340B941C96CF9000C820D7 /* statusbar-ok.png in Resources */, + F88869FD262CC1770039DE6C /* Hello-IT.xcconfig in Resources */, E1D068051B51D08E00567172 /* Images.xcassets in Resources */, - F8340B9F1C96CF9000C820D7 /* statusbar@2x.png in Resources */, - F8340B901C96CF9000C820D7 /* statusbar-error.png in Resources */, - F8340B9E1C96CF9000C820D7 /* statusbar.png in Resources */, - F8340B9B1C96CF9000C820D7 /* statusbar-warning-dark@2x.png in Resources */, - F8340B8C1C96CF9000C820D7 /* statusbar-dark.png in Resources */, - F8340B931C96CF9000C820D7 /* statusbar-ok-dark@2x.png in Resources */, - F8340B9A1C96CF9000C820D7 /* statusbar-warning-dark.png in Resources */, - F8340B911C96CF9000C820D7 /* statusbar-error@2x.png in Resources */, - F8340B8D1C96CF9000C820D7 /* statusbar-dark@2x.png in Resources */, - F8340B8F1C96CF9000C820D7 /* statusbar-error-dark@2x.png in Resources */, E1D068081B51D08E00567172 /* MainMenu.xib in Resources */, - F8340B981C96CF9000C820D7 /* statusbar-unavailable.png in Resources */, - F8340B8E1C96CF9000C820D7 /* statusbar-error-dark.png in Resources */, - F8340B971C96CF9000C820D7 /* statusbar-unavailable-dark@2x.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -834,28 +750,12 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + F88869FE262CC1770039DE6C /* Hello-IT.xcconfig in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - E128992F1B59B4E800BF7FD6 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\"\n"; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E1D067F61B51D08E00567172 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -961,6 +861,7 @@ /* Begin XCBuildConfiguration section */ E1D068151B51D08F00567172 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F88869FC262CC1770039DE6C /* Hello-IT.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -982,6 +883,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -1016,6 +918,7 @@ }; E1D068161B51D08F00567172 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F88869FC262CC1770039DE6C /* Hello-IT.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -1037,6 +940,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Hello IT/AppDelegate.m b/src/Hello IT/AppDelegate.m index e06e852..6221a44 100644 --- a/src/Hello IT/AppDelegate.m +++ b/src/Hello IT/AppDelegate.m @@ -118,6 +118,9 @@ - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { usingBlock:^(NSNotification * _Nonnull note) { [self updateStatusItem]; }]; + + [self.statusItem addObserver:self forKeyPath:@"button.effectiveAppearance" options:NSKeyValueObservingOptionNew|NSKeyValueObservingOptionInitial context:nil]; + } - (void)applicationWillTerminate:(NSNotification *)aNotification { @@ -177,14 +180,28 @@ - (void)updateStatusItem { imageName = @"statusbar"; break; } - - NSString *osxMode = [[NSUserDefaults standardUserDefaults] stringForKey:@"AppleInterfaceStyle"]; - - if ([osxMode isEqualToString:@"Dark"]) { - tryDark = YES; - imageNameForDark = [imageName stringByAppendingString:@"-dark"]; + + NSNumber *interfaceStyleCanChange = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleInterfaceStyleSwitchesAutomatically"]; + + if (@available(macOS 10.15, *)) { + if (interfaceStyleCanChange != nil) { + + } else { + NSString *currentInterfaceStyle = [[NSUserDefaults standardUserDefaults] stringForKey:@"AppleInterfaceStyle"]; + if ([currentInterfaceStyle.lowercaseString isEqualToString:@"dark"]) { + tryDark = YES; + imageNameForDark = [imageName stringByAppendingString:@"-dark"]; + } + } + } else { + NSString *currentInterfaceStyle = [[NSUserDefaults standardUserDefaults] stringForKey:@"AppleInterfaceStyle"]; + if ([currentInterfaceStyle.lowercaseString isEqualToString:@"dark"]) { + tryDark = YES; + imageNameForDark = [imageName stringByAppendingString:@"-dark"]; + } } + NSString *customStatusBarIconBaseFolder = [NSString stringWithFormat:@"/Library/Application Support/com.github.ygini.hello-it/CustomStatusBarIcon"]; NSString *finalPath = [[customStatusBarIconBaseFolder stringByAppendingPathComponent:imageName] stringByAppendingPathExtension:@"tiff"]; @@ -204,19 +221,13 @@ - (void)updateStatusItem { icon = [[NSImage alloc] initWithContentsOfFile:finalPath]; } else { - if (tryDark) { - asl_log(NULL, NULL, ASL_LEVEL_INFO, "Default dark icon will be used."); - icon = [NSImage imageNamed:imageNameForDark]; - } else { asl_log(NULL, NULL, ASL_LEVEL_INFO, "Default icon will be used."); icon = [NSImage imageNamed:imageName]; - } } self.statusItem.image = icon; } else { NSColor *textColor = nil; - NSString *osxMode = [[NSUserDefaults standardUserDefaults] stringForKey:@"AppleInterfaceStyle"]; switch (statusMenuState) { case HITPluginTestStateError: @@ -229,7 +240,7 @@ - (void)updateStatusItem { textColor = [NSColor orangeColor]; break; default: - if ([osxMode isEqualToString:@"Dark"]) { + if ([self.statusItem.button.effectiveAppearance.name.lowercaseString containsString:@"dark"]) { textColor = [NSColor whiteColor]; } else { textColor = [NSColor blackColor]; @@ -323,6 +334,8 @@ - (void)loadMenu { - (void)observeValueForKeyPath:(NSString *)keyPath ofObject:(id)object change:(NSDictionary *)change context:(void *)context { if ([keyPath isEqualToString:@"testState"]) { [self updateStatusItem]; + } else if([keyPath isEqualToString:@"button.effectiveAppearance"]){ + [self updateStatusItem]; } } diff --git a/src/Hello IT/Images.xcassets/Contents.json b/src/Hello IT/Images.xcassets/Contents.json new file mode 100644 index 0000000..73c0059 --- /dev/null +++ b/src/Hello IT/Images.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/src/Hello IT/Images.xcassets/statusbar-error.imageset/Contents.json b/src/Hello IT/Images.xcassets/statusbar-error.imageset/Contents.json new file mode 100644 index 0000000..23eb1c4 --- /dev/null +++ b/src/Hello IT/Images.xcassets/statusbar-error.imageset/Contents.json @@ -0,0 +1,40 @@ +{ + "images" : [ + { + "filename" : "statusbar-error.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-error-dark.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "filename" : "statusbar-error@2x.png", + "idiom" : "mac", + "scale" : "2x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-error-dark@2x.png", + "idiom" : "mac", + "scale" : "2x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/src/Hello IT/statusbar-error-dark.png b/src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error-dark.png similarity index 100% rename from src/Hello IT/statusbar-error-dark.png rename to src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error-dark.png diff --git a/src/Hello IT/statusbar-error-dark@2x.png b/src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error-dark@2x.png similarity index 100% rename from src/Hello IT/statusbar-error-dark@2x.png rename to src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error-dark@2x.png diff --git a/src/Hello IT/statusbar-error.png b/src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error.png similarity index 100% rename from src/Hello IT/statusbar-error.png rename to src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error.png diff --git a/src/Hello IT/statusbar-error@2x.png b/src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error@2x.png similarity index 100% rename from src/Hello IT/statusbar-error@2x.png rename to src/Hello IT/Images.xcassets/statusbar-error.imageset/statusbar-error@2x.png diff --git a/src/Hello IT/Images.xcassets/statusbar-ok.imageset/Contents.json b/src/Hello IT/Images.xcassets/statusbar-ok.imageset/Contents.json new file mode 100644 index 0000000..5e91d9a --- /dev/null +++ b/src/Hello IT/Images.xcassets/statusbar-ok.imageset/Contents.json @@ -0,0 +1,40 @@ +{ + "images" : [ + { + "filename" : "statusbar-ok.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-ok-dark.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "filename" : "statusbar-ok@2x.png", + "idiom" : "mac", + "scale" : "2x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-ok-dark@2x-1.png", + "idiom" : "mac", + "scale" : "2x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/src/Hello IT/statusbar-ok-dark.png b/src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok-dark.png similarity index 100% rename from src/Hello IT/statusbar-ok-dark.png rename to src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok-dark.png diff --git a/src/Hello IT/statusbar-ok-dark@2x.png b/src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok-dark@2x-1.png similarity index 100% rename from src/Hello IT/statusbar-ok-dark@2x.png rename to src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok-dark@2x-1.png diff --git a/src/Hello IT/statusbar-ok.png b/src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok.png similarity index 100% rename from src/Hello IT/statusbar-ok.png rename to src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok.png diff --git a/src/Hello IT/statusbar-ok@2x.png b/src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok@2x.png similarity index 100% rename from src/Hello IT/statusbar-ok@2x.png rename to src/Hello IT/Images.xcassets/statusbar-ok.imageset/statusbar-ok@2x.png diff --git a/src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/Contents.json b/src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/Contents.json new file mode 100644 index 0000000..a1ed070 --- /dev/null +++ b/src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/Contents.json @@ -0,0 +1,40 @@ +{ + "images" : [ + { + "filename" : "statusbar-unavailable.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-unavailable-dark.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "filename" : "statusbar-unavailable@2x.png", + "idiom" : "mac", + "scale" : "2x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-unavailable-dark@2x.png", + "idiom" : "mac", + "scale" : "2x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/src/Hello IT/statusbar-unavailable-dark.png b/src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable-dark.png similarity index 100% rename from src/Hello IT/statusbar-unavailable-dark.png rename to src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable-dark.png diff --git a/src/Hello IT/statusbar-unavailable-dark@2x.png b/src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable-dark@2x.png similarity index 100% rename from src/Hello IT/statusbar-unavailable-dark@2x.png rename to src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable-dark@2x.png diff --git a/src/Hello IT/statusbar-unavailable.png b/src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable.png similarity index 100% rename from src/Hello IT/statusbar-unavailable.png rename to src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable.png diff --git a/src/Hello IT/statusbar-unavailable@2x.png b/src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable@2x.png similarity index 100% rename from src/Hello IT/statusbar-unavailable@2x.png rename to src/Hello IT/Images.xcassets/statusbar-unavailable.imageset/statusbar-unavailable@2x.png diff --git a/src/Hello IT/Images.xcassets/statusbar-warning.imageset/Contents.json b/src/Hello IT/Images.xcassets/statusbar-warning.imageset/Contents.json new file mode 100644 index 0000000..2567cd0 --- /dev/null +++ b/src/Hello IT/Images.xcassets/statusbar-warning.imageset/Contents.json @@ -0,0 +1,40 @@ +{ + "images" : [ + { + "filename" : "statusbar-warning.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-warning-dark.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "filename" : "statusbar-warning@2x.png", + "idiom" : "mac", + "scale" : "2x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-warning-dark@2x.png", + "idiom" : "mac", + "scale" : "2x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/src/Hello IT/statusbar-warning-dark.png b/src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning-dark.png similarity index 100% rename from src/Hello IT/statusbar-warning-dark.png rename to src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning-dark.png diff --git a/src/Hello IT/statusbar-warning-dark@2x.png b/src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning-dark@2x.png similarity index 100% rename from src/Hello IT/statusbar-warning-dark@2x.png rename to src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning-dark@2x.png diff --git a/src/Hello IT/statusbar-warning.png b/src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning.png similarity index 100% rename from src/Hello IT/statusbar-warning.png rename to src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning.png diff --git a/src/Hello IT/statusbar-warning@2x.png b/src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning@2x.png similarity index 100% rename from src/Hello IT/statusbar-warning@2x.png rename to src/Hello IT/Images.xcassets/statusbar-warning.imageset/statusbar-warning@2x.png diff --git a/src/Hello IT/Images.xcassets/statusbar.imageset/Contents.json b/src/Hello IT/Images.xcassets/statusbar.imageset/Contents.json new file mode 100644 index 0000000..574fb43 --- /dev/null +++ b/src/Hello IT/Images.xcassets/statusbar.imageset/Contents.json @@ -0,0 +1,40 @@ +{ + "images" : [ + { + "filename" : "statusbar.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-dark.png", + "idiom" : "mac", + "scale" : "1x" + }, + { + "filename" : "statusbar@2x.png", + "idiom" : "mac", + "scale" : "2x" + }, + { + "appearances" : [ + { + "appearance" : "luminosity", + "value" : "dark" + } + ], + "filename" : "statusbar-dark@2x.png", + "idiom" : "mac", + "scale" : "2x" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/src/Hello IT/statusbar-dark.png b/src/Hello IT/Images.xcassets/statusbar.imageset/statusbar-dark.png similarity index 100% rename from src/Hello IT/statusbar-dark.png rename to src/Hello IT/Images.xcassets/statusbar.imageset/statusbar-dark.png diff --git a/src/Hello IT/statusbar-dark@2x.png b/src/Hello IT/Images.xcassets/statusbar.imageset/statusbar-dark@2x.png similarity index 100% rename from src/Hello IT/statusbar-dark@2x.png rename to src/Hello IT/Images.xcassets/statusbar.imageset/statusbar-dark@2x.png diff --git a/src/Hello IT/statusbar.png b/src/Hello IT/Images.xcassets/statusbar.imageset/statusbar.png similarity index 100% rename from src/Hello IT/statusbar.png rename to src/Hello IT/Images.xcassets/statusbar.imageset/statusbar.png diff --git a/src/Hello IT/statusbar@2x.png b/src/Hello IT/Images.xcassets/statusbar.imageset/statusbar@2x.png similarity index 100% rename from src/Hello IT/statusbar@2x.png rename to src/Hello IT/Images.xcassets/statusbar.imageset/statusbar@2x.png diff --git a/src/Hello IT/Info.plist b/src/Hello IT/Info.plist index d0cad90..20bc3de 100644 --- a/src/Hello IT/Info.plist +++ b/src/Hello IT/Info.plist @@ -17,11 +17,11 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.5.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) LSApplicationCategoryType public.app-category.utilities LSMinimumSystemVersion diff --git a/src/Hello IT/Reachability.m b/src/Hello IT/Reachability.m index 4c1c94a..363721b 100644 --- a/src/Hello IT/Reachability.m +++ b/src/Hello IT/Reachability.m @@ -35,6 +35,7 @@ CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF #import + NSString *const kReachabilityChangedNotification = @"kReachabilityChangedNotification"; diff --git a/src/Hello ITTests/Info.plist b/src/Hello ITTests/Info.plist index ba72822..802c540 100644 --- a/src/Hello ITTests/Info.plist +++ b/src/Hello ITTests/Info.plist @@ -15,10 +15,10 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 1 + $(BUILD_VERSION) diff --git a/src/Hello-IT.xcconfig b/src/Hello-IT.xcconfig new file mode 100644 index 0000000..400f7a4 --- /dev/null +++ b/src/Hello-IT.xcconfig @@ -0,0 +1,15 @@ +// +// Hello-IT.xcconfig +// Hello IT +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include ".BuildVersion.xcconfig" + +MARKETING_VERSION = 1.6.0 +BUILD_VERSION = $(GIT_BUILD_VERSION:default=0) diff --git a/src/Plugins/ADPass/ADPass.xcconfig b/src/Plugins/ADPass/ADPass.xcconfig new file mode 100644 index 0000000..2e26546 --- /dev/null +++ b/src/Plugins/ADPass/ADPass.xcconfig @@ -0,0 +1,12 @@ +// +// ADPass.xcconfig +// ADPass +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini. All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/ADPass/ADPass.xcodeproj/project.pbxproj b/src/Plugins/ADPass/ADPass.xcodeproj/project.pbxproj index 666f2a4..e21ed2a 100644 --- a/src/Plugins/ADPass/ADPass.xcodeproj/project.pbxproj +++ b/src/Plugins/ADPass/ADPass.xcodeproj/project.pbxproj @@ -22,6 +22,7 @@ F83294BB1F773275009DA574 /* OpenDirectory.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = OpenDirectory.framework; path = System/Library/Frameworks/OpenDirectory.framework; sourceTree = SDKROOT; }; F83294E71F77A8C9009DA574 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; F83294E91F77A99A009DA574 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; + F8886A20262CC32D0039DE6C /* ADPass.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ADPass.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -40,6 +41,7 @@ F832949C1F773076009DA574 = { isa = PBXGroup; children = ( + F8886A20262CC32D0039DE6C /* ADPass.xcconfig */, F83294A71F773076009DA574 /* ADPass */, F83294A61F773076009DA574 /* Products */, F83294B51F77308C009DA574 /* Frameworks */, @@ -81,7 +83,6 @@ isa = PBXNativeTarget; buildConfigurationList = F83294AB1F773076009DA574 /* Build configuration list for PBXNativeTarget "ADPass" */; buildPhases = ( - F89A03592368A5CF0059281B /* GitVersion */, F83294A11F773076009DA574 /* Sources */, F83294A21F773076009DA574 /* Frameworks */, F83294A31F773076009DA574 /* Resources */, @@ -101,7 +102,7 @@ F832949D1F773076009DA574 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0940; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini"; TargetAttributes = { F83294A41F773076009DA574 = { @@ -141,27 +142,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F89A03592368A5CF0059281B /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\"\n"; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ F83294A11F773076009DA574 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -188,6 +168,7 @@ /* Begin XCBuildConfiguration section */ F83294A91F773076009DA574 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A20262CC32D0039DE6C /* ADPass.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -212,6 +193,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -245,6 +227,7 @@ }; F83294AA1F773076009DA574 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A20262CC32D0039DE6C /* ADPass.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -269,6 +252,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/ADPass/ADPass/Info.plist b/src/Plugins/ADPass/ADPass/Info.plist index e73a0ed..e11cc6a 100644 --- a/src/Plugins/ADPass/ADPass/Info.plist +++ b/src/Plugins/ADPass/ADPass/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.ad.pass NSHumanReadableCopyright diff --git a/src/Plugins/CachetHQ/CachetHQ.xcconfig b/src/Plugins/CachetHQ/CachetHQ.xcconfig new file mode 100644 index 0000000..70bff14 --- /dev/null +++ b/src/Plugins/CachetHQ/CachetHQ.xcconfig @@ -0,0 +1,12 @@ +// +// CachetHQ.xcconfig +// CachetHQ +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/CachetHQ/CachetHQ.xcodeproj/project.pbxproj b/src/Plugins/CachetHQ/CachetHQ.xcodeproj/project.pbxproj index 09dbc0a..5da7e37 100644 --- a/src/Plugins/CachetHQ/CachetHQ.xcodeproj/project.pbxproj +++ b/src/Plugins/CachetHQ/CachetHQ.xcodeproj/project.pbxproj @@ -9,6 +9,8 @@ /* Begin PBXBuildFile section */ F811AD372149A0B700BD15AD /* CachetHQIncidents.m in Sources */ = {isa = PBXBuildFile; fileRef = F811AD362149A0B700BD15AD /* CachetHQIncidents.m */; }; F811AD382149A18600BD15AD /* HITDevKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8B6574B20C7284D009F31B6 /* HITDevKit.framework */; }; + F8886A18262CC28D0039DE6C /* CachetHQ.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = F8886A17262CC28D0039DE6C /* CachetHQ.xcconfig */; }; + F8886A19262CC28D0039DE6C /* CachetHQ.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = F8886A17262CC28D0039DE6C /* CachetHQ.xcconfig */; }; F8B6574C20C7284D009F31B6 /* HITDevKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F8B6574B20C7284D009F31B6 /* HITDevKit.framework */; }; F8B6574F20C7288C009F31B6 /* CachetHQComponent.m in Sources */ = {isa = PBXBuildFile; fileRef = F8B6574E20C7288C009F31B6 /* CachetHQComponent.m */; }; /* End PBXBuildFile section */ @@ -18,6 +20,7 @@ F811AD312149A07E00BD15AD /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; F811AD352149A0B700BD15AD /* CachetHQIncidents.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CachetHQIncidents.h; sourceTree = ""; }; F811AD362149A0B700BD15AD /* CachetHQIncidents.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CachetHQIncidents.m; sourceTree = ""; }; + F8886A17262CC28D0039DE6C /* CachetHQ.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = CachetHQ.xcconfig; sourceTree = ""; }; F8B6573A20C727D7009F31B6 /* CachetHQComponent.hitp */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CachetHQComponent.hitp; sourceTree = BUILT_PRODUCTS_DIR; }; F8B6573D20C727D7009F31B6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; F8B6574B20C7284D009F31B6 /* HITDevKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = HITDevKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -58,6 +61,7 @@ F8B6573120C727D7009F31B6 = { isa = PBXGroup; children = ( + F8886A17262CC28D0039DE6C /* CachetHQ.xcconfig */, F8B6573C20C727D7009F31B6 /* CachetHQComponent */, F811AD302149A07E00BD15AD /* CachetHQIncidents */, F8B6573B20C727D7009F31B6 /* Products */, @@ -99,7 +103,6 @@ isa = PBXNativeTarget; buildConfigurationList = F811AD342149A07E00BD15AD /* Build configuration list for PBXNativeTarget "CachetHQIncidents" */; buildPhases = ( - F89A035A2368A5E00059281B /* GitVersion */, F811AD2B2149A07E00BD15AD /* Sources */, F811AD2C2149A07E00BD15AD /* Frameworks */, F811AD2D2149A07E00BD15AD /* Resources */, @@ -136,7 +139,7 @@ F8B6573220C727D7009F31B6 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0940; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { F811AD2E2149A07E00BD15AD = { @@ -171,6 +174,7 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + F8886A19262CC28D0039DE6C /* CachetHQ.xcconfig in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -178,32 +182,12 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( + F8886A18262CC28D0039DE6C /* CachetHQ.xcconfig in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F89A035A2368A5E00059281B /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\"\n"; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ F811AD2B2149A07E00BD15AD /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -258,6 +242,7 @@ }; F8B6573E20C727D7009F31B6 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A17262CC28D0039DE6C /* CachetHQ.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -282,6 +267,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -316,6 +302,7 @@ }; F8B6573F20C727D7009F31B6 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A17262CC28D0039DE6C /* CachetHQ.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -340,6 +327,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/CachetHQ/CachetHQComponent/Info.plist b/src/Plugins/CachetHQ/CachetHQComponent/Info.plist index d466d03..dc0762c 100644 --- a/src/Plugins/CachetHQ/CachetHQComponent/Info.plist +++ b/src/Plugins/CachetHQ/CachetHQComponent/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleVersion - 1 + $(BUILD_VERSION) HITPFunctionIdentifier public.cachethq.component NSHumanReadableCopyright diff --git a/src/Plugins/CachetHQ/CachetHQIncidents/Info.plist b/src/Plugins/CachetHQ/CachetHQIncidents/Info.plist index ca71637..08a5de2 100644 --- a/src/Plugins/CachetHQ/CachetHQIncidents/Info.plist +++ b/src/Plugins/CachetHQ/CachetHQIncidents/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) + CFBundleVersion + $(BUILD_VERSION) HITPFunctionIdentifier public.cachethq.incidents - CFBundleVersion - 1 NSHumanReadableCopyright Copyright © 2018 Yoann Gini (Open Source Project). All rights reserved. NSPrincipalClass diff --git a/src/Plugins/Command/Command.xcodeproj/project.pbxproj b/src/Plugins/Command/Command.xcodeproj/project.pbxproj index 112a85c..c6bee84 100644 --- a/src/Plugins/Command/Command.xcodeproj/project.pbxproj +++ b/src/Plugins/Command/Command.xcodeproj/project.pbxproj @@ -12,6 +12,7 @@ /* End PBXBuildFile section */ /* Begin PBXFileReference section */ + F8886A1E262CC3030039DE6C /* Config.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Config.xcconfig; sourceTree = ""; }; F89A03432368A51C0059281B /* Command.hitp */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Command.hitp; sourceTree = BUILT_PRODUCTS_DIR; }; F89A03462368A51C0059281B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; F89A03552368A53C0059281B /* HITDevKit.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = HITDevKit.framework; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -34,6 +35,7 @@ F89A033A2368A51C0059281B = { isa = PBXGroup; children = ( + F8886A1E262CC3030039DE6C /* Config.xcconfig */, F89A03452368A51C0059281B /* Command */, F89A03442368A51C0059281B /* Products */, F89A03542368A53C0059281B /* Frameworks */, @@ -73,7 +75,6 @@ isa = PBXNativeTarget; buildConfigurationList = F89A03492368A51C0059281B /* Build configuration list for PBXNativeTarget "Command" */; buildPhases = ( - F89A035B2368A5EF0059281B /* GitVersion */, F89A033F2368A51C0059281B /* Sources */, F89A03402368A51C0059281B /* Frameworks */, F89A03412368A51C0059281B /* Resources */, @@ -93,7 +94,7 @@ F89A033B2368A51C0059281B /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1100; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { F89A03422368A51C0059281B = { @@ -129,27 +130,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F89A035B2368A5EF0059281B /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputFileListPaths = ( - ); - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\"\n"; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ F89A033F2368A51C0059281B /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -164,6 +144,7 @@ /* Begin XCBuildConfiguration section */ F89A03472368A51C0059281B /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A1E262CC3030039DE6C /* Config.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -188,6 +169,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -222,6 +204,7 @@ }; F89A03482368A51C0059281B /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A1E262CC3030039DE6C /* Config.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_NONNULL = YES; @@ -246,6 +229,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/Command/Command/Info.plist b/src/Plugins/Command/Command/Info.plist index 6d5bdac..f0875dd 100644 --- a/src/Plugins/Command/Command/Info.plist +++ b/src/Plugins/Command/Command/Info.plist @@ -15,9 +15,9 @@ CFBundlePackageType $(PRODUCT_BUNDLE_PACKAGE_TYPE) CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.command NSHumanReadableCopyright diff --git a/src/Plugins/Command/Config.xcconfig b/src/Plugins/Command/Config.xcconfig new file mode 100644 index 0000000..34afb52 --- /dev/null +++ b/src/Plugins/Command/Config.xcconfig @@ -0,0 +1,12 @@ +// +// Config.xcconfig +// Command +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/OpenApplication/OpenApplication.xcconfig b/src/Plugins/OpenApplication/OpenApplication.xcconfig new file mode 100644 index 0000000..bc4ce18 --- /dev/null +++ b/src/Plugins/OpenApplication/OpenApplication.xcconfig @@ -0,0 +1,12 @@ +// +// OpenApplication.xcconfig +// OpenApplication +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/OpenApplication/OpenApplication.xcodeproj/project.pbxproj b/src/Plugins/OpenApplication/OpenApplication.xcodeproj/project.pbxproj index 0862a79..afa6e40 100644 --- a/src/Plugins/OpenApplication/OpenApplication.xcodeproj/project.pbxproj +++ b/src/Plugins/OpenApplication/OpenApplication.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ E14B67B81B5785E400941A27 /* HITPOpenApplication.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPOpenApplication.h; sourceTree = ""; }; E14B67B91B5785E400941A27 /* HITPOpenApplication.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPOpenApplication.m; sourceTree = ""; }; E1B2C91C1B594C12005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; + F8886A27262CC4350039DE6C /* OpenApplication.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = OpenApplication.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -34,6 +35,7 @@ E14B67941B57855F00941A27 = { isa = PBXGroup; children = ( + F8886A27262CC4350039DE6C /* OpenApplication.xcconfig */, E1B2C91C1B594C12005A9936 /* HITDevKit.framework */, E14B679F1B57855F00941A27 /* OpenApplication */, E14B679E1B57855F00941A27 /* Products */, @@ -73,7 +75,6 @@ isa = PBXNativeTarget; buildConfigurationList = E14B67A41B57856000941A27 /* Build configuration list for PBXNativeTarget "OpenApplication" */; buildPhases = ( - F8B50A2C1D1ED04A003CD614 /* GitVersion */, E14B67991B57855F00941A27 /* Sources */, E14B679A1B57855F00941A27 /* Frameworks */, E14B679B1B57855F00941A27 /* Resources */, @@ -93,7 +94,7 @@ E14B67951B57855F00941A27 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E14B679C1B57855F00941A27 = { @@ -131,23 +132,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A2C1D1ED04A003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E14B67991B57855F00941A27 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -162,6 +146,7 @@ /* Begin XCBuildConfiguration section */ E14B67A21B57856000941A27 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A27262CC4350039DE6C /* OpenApplication.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -183,6 +168,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -216,6 +202,7 @@ }; E14B67A31B57856000941A27 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A27262CC4350039DE6C /* OpenApplication.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -237,6 +224,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/OpenApplication/OpenApplication/Info.plist b/src/Plugins/OpenApplication/OpenApplication/Info.plist index b6ab794..d6235e9 100644 --- a/src/Plugins/OpenApplication/OpenApplication/Info.plist +++ b/src/Plugins/OpenApplication/OpenApplication/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.1 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.open.application NSHumanReadableCopyright diff --git a/src/Plugins/OpenResource/OpenResource.xcconfig b/src/Plugins/OpenResource/OpenResource.xcconfig new file mode 100644 index 0000000..95e59ab --- /dev/null +++ b/src/Plugins/OpenResource/OpenResource.xcconfig @@ -0,0 +1,12 @@ +// +// OpenResource.xcconfig +// OpenResource +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/OpenResource/OpenResource.xcodeproj/project.pbxproj b/src/Plugins/OpenResource/OpenResource.xcodeproj/project.pbxproj index 0ffa367..839e8a5 100644 --- a/src/Plugins/OpenResource/OpenResource.xcodeproj/project.pbxproj +++ b/src/Plugins/OpenResource/OpenResource.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ E1B2C90C1B593B1F005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; E1D068291B51E54E00567172 /* OpenResource.hitp */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = OpenResource.hitp; sourceTree = BUILT_PRODUCTS_DIR; }; E1D0682D1B51E54E00567172 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + F8886A21262CC3550039DE6C /* OpenResource.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = OpenResource.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -34,6 +35,7 @@ E1D068201B51E54E00567172 = { isa = PBXGroup; children = ( + F8886A21262CC3550039DE6C /* OpenResource.xcconfig */, E1B2C90C1B593B1F005A9936 /* HITDevKit.framework */, E1D0682B1B51E54E00567172 /* OpenResource */, E1D0682A1B51E54E00567172 /* Products */, @@ -73,7 +75,6 @@ isa = PBXNativeTarget; buildConfigurationList = E1D068301B51E54E00567172 /* Build configuration list for PBXNativeTarget "OpenResource" */; buildPhases = ( - F8B50A241D1ECF3B003CD614 /* GitVersion */, E1D068251B51E54E00567172 /* Sources */, E1D068261B51E54E00567172 /* Frameworks */, E1D068271B51E54E00567172 /* Resources */, @@ -93,7 +94,7 @@ E1D068211B51E54E00567172 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E1D068281B51E54E00567172 = { @@ -131,23 +132,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A241D1ECF3B003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\"\n"; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E1D068251B51E54E00567172 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -162,6 +146,7 @@ /* Begin XCBuildConfiguration section */ E1D0682E1B51E54E00567172 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A21262CC3550039DE6C /* OpenResource.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -183,6 +168,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -216,6 +202,7 @@ }; E1D0682F1B51E54E00567172 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A21262CC3550039DE6C /* OpenResource.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -237,6 +224,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/OpenResource/OpenResource/Info.plist b/src/Plugins/OpenResource/OpenResource/Info.plist index 668a093..1427eaa 100644 --- a/src/Plugins/OpenResource/OpenResource/Info.plist +++ b/src/Plugins/OpenResource/OpenResource/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.open.resource NSHumanReadableCopyright diff --git a/src/Plugins/Quit/Quit.xcconfig b/src/Plugins/Quit/Quit.xcconfig new file mode 100644 index 0000000..9fe4a83 --- /dev/null +++ b/src/Plugins/Quit/Quit.xcconfig @@ -0,0 +1,12 @@ +// +// Quit.xcconfig +// Quit +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/Quit/Quit.xcodeproj/project.pbxproj b/src/Plugins/Quit/Quit.xcodeproj/project.pbxproj index 54b707c..2249787 100644 --- a/src/Plugins/Quit/Quit.xcodeproj/project.pbxproj +++ b/src/Plugins/Quit/Quit.xcodeproj/project.pbxproj @@ -30,6 +30,7 @@ E1AF40551B529AB70017B4DD /* HITPQuit.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPQuit.h; sourceTree = ""; }; E1AF40561B529AB70017B4DD /* HITPQuit.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPQuit.m; sourceTree = ""; }; E1B2C9181B5947E0005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; + F8886A25262CC3FC0039DE6C /* Quit.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Quit.xcconfig; sourceTree = ""; }; F89297411D11356100E431E2 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Localizable.strings; sourceTree = ""; }; F89297431D11359800E431E2 /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; /* End PBXFileReference section */ @@ -49,6 +50,7 @@ E1AF40381B529AA10017B4DD = { isa = PBXGroup; children = ( + F8886A25262CC3FC0039DE6C /* Quit.xcconfig */, E1B2C9181B5947E0005A9936 /* HITDevKit.framework */, E1AF40431B529AA10017B4DD /* Quit */, E1AF40421B529AA10017B4DD /* Products */, @@ -89,7 +91,6 @@ isa = PBXNativeTarget; buildConfigurationList = E1AF40481B529AA10017B4DD /* Build configuration list for PBXNativeTarget "Quit" */; buildPhases = ( - F8B50A2A1D1ED006003CD614 /* GitVersion */, E1AF403D1B529AA10017B4DD /* Sources */, E1AF403E1B529AA10017B4DD /* Frameworks */, E1AF403F1B529AA10017B4DD /* Resources */, @@ -110,7 +111,7 @@ E1AF40391B529AA10017B4DD /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 0940; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E1AF40401B529AA10017B4DD = { @@ -150,23 +151,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A2A1D1ED006003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E1AF403D1B529AA10017B4DD /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -193,6 +177,7 @@ /* Begin XCBuildConfiguration section */ E1AF40461B529AA10017B4DD /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A25262CC3FC0039DE6C /* Quit.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -214,6 +199,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -247,6 +233,7 @@ }; E1AF40471B529AA10017B4DD /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A25262CC3FC0039DE6C /* Quit.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -268,6 +255,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/Quit/Quit/Info.plist b/src/Plugins/Quit/Quit/Info.plist index 0b2eba9..102c93f 100644 --- a/src/Plugins/Quit/Quit/Info.plist +++ b/src/Plugins/Quit/Quit/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.quit NSHumanReadableCopyright diff --git a/src/Plugins/ScriptedItem/ScriptedItem.xcconfig b/src/Plugins/ScriptedItem/ScriptedItem.xcconfig new file mode 100644 index 0000000..cf4c02f --- /dev/null +++ b/src/Plugins/ScriptedItem/ScriptedItem.xcconfig @@ -0,0 +1,12 @@ +// +// ScriptedItem.xcconfig +// ScriptedItem +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/ScriptedItem/ScriptedItem.xcodeproj/project.pbxproj b/src/Plugins/ScriptedItem/ScriptedItem.xcodeproj/project.pbxproj index d7f8fa0..70db0e9 100644 --- a/src/Plugins/ScriptedItem/ScriptedItem.xcodeproj/project.pbxproj +++ b/src/Plugins/ScriptedItem/ScriptedItem.xcodeproj/project.pbxproj @@ -19,6 +19,7 @@ E14B67D81B5905B900941A27 /* HITPScriptedItem.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPScriptedItem.m; sourceTree = ""; }; E1B2C91E1B594C69005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; F84606011FCAC1FC0021DD89 /* scriptLibraries */ = {isa = PBXFileReference; lastKnownFileType = folder; path = scriptLibraries; sourceTree = ""; }; + F8886A28262CC44A0039DE6C /* ScriptedItem.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = ScriptedItem.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -36,6 +37,7 @@ E14B67BC1B59059000941A27 = { isa = PBXGroup; children = ( + F8886A28262CC44A0039DE6C /* ScriptedItem.xcconfig */, F84606011FCAC1FC0021DD89 /* scriptLibraries */, E1B2C91E1B594C69005A9936 /* HITDevKit.framework */, E14B67C71B59059000941A27 /* ScriptedItem */, @@ -76,7 +78,6 @@ isa = PBXNativeTarget; buildConfigurationList = E14B67CC1B59059000941A27 /* Build configuration list for PBXNativeTarget "ScriptedItem" */; buildPhases = ( - F8B50A2D1D1ED058003CD614 /* GitVersion */, E14B67C11B59059000941A27 /* Sources */, E14B67C21B59059000941A27 /* Frameworks */, E14B67C31B59059000941A27 /* Resources */, @@ -96,7 +97,7 @@ E14B67BD1B59059000941A27 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E14B67C41B59059000941A27 = { @@ -135,23 +136,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A2D1D1ED058003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E14B67C11B59059000941A27 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -166,6 +150,7 @@ /* Begin XCBuildConfiguration section */ E14B67CA1B59059000941A27 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A28262CC44A0039DE6C /* ScriptedItem.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -187,6 +172,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -220,6 +206,7 @@ }; E14B67CB1B59059000941A27 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A28262CC44A0039DE6C /* ScriptedItem.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -241,6 +228,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/ScriptedItem/ScriptedItem/Info.plist b/src/Plugins/ScriptedItem/ScriptedItem/Info.plist index 9f7acd9..389bf44 100644 --- a/src/Plugins/ScriptedItem/ScriptedItem/Info.plist +++ b/src/Plugins/ScriptedItem/ScriptedItem/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.3 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.script.item NSHumanReadableCopyright diff --git a/src/Plugins/Separator/Separator.xcconfig b/src/Plugins/Separator/Separator.xcconfig new file mode 100644 index 0000000..51b0c6f --- /dev/null +++ b/src/Plugins/Separator/Separator.xcconfig @@ -0,0 +1,12 @@ +// +// Separator.xcconfig +// Separator +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/Separator/Separator.xcodeproj/project.pbxproj b/src/Plugins/Separator/Separator.xcodeproj/project.pbxproj index 6659063..de7f9f3 100644 --- a/src/Plugins/Separator/Separator.xcodeproj/project.pbxproj +++ b/src/Plugins/Separator/Separator.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ E177437D1B51F1B700A5B406 /* HITPSeparator.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPSeparator.h; sourceTree = ""; }; E177437E1B51F1B700A5B406 /* HITPSeparator.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPSeparator.m; sourceTree = ""; }; E1B2C90E1B593CA8005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; + F8886A22262CC3970039DE6C /* Separator.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Separator.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -34,6 +35,7 @@ E17743621B51F19B00A5B406 = { isa = PBXGroup; children = ( + F8886A22262CC3970039DE6C /* Separator.xcconfig */, E1B2C90E1B593CA8005A9936 /* HITDevKit.framework */, E177436D1B51F19B00A5B406 /* Separator */, E177436C1B51F19B00A5B406 /* Products */, @@ -73,7 +75,6 @@ isa = PBXNativeTarget; buildConfigurationList = E17743721B51F19B00A5B406 /* Build configuration list for PBXNativeTarget "Separator" */; buildPhases = ( - F8B50A251D1ECF75003CD614 /* GitVersion */, E17743671B51F19B00A5B406 /* Sources */, E17743681B51F19B00A5B406 /* Frameworks */, E17743691B51F19B00A5B406 /* Resources */, @@ -93,7 +94,7 @@ E17743631B51F19B00A5B406 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E177436A1B51F19B00A5B406 = { @@ -131,23 +132,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A251D1ECF75003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E17743671B51F19B00A5B406 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -162,6 +146,7 @@ /* Begin XCBuildConfiguration section */ E17743701B51F19B00A5B406 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A22262CC3970039DE6C /* Separator.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -183,6 +168,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -216,6 +202,7 @@ }; E17743711B51F19B00A5B406 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A22262CC3970039DE6C /* Separator.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -237,6 +224,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/Separator/Separator/Info.plist b/src/Plugins/Separator/Separator/Info.plist index 243d9de..8f1664d 100644 --- a/src/Plugins/Separator/Separator/Info.plist +++ b/src/Plugins/Separator/Separator/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.separator NSHumanReadableCopyright diff --git a/src/Plugins/SubMenu/SubMenu.xcconfig b/src/Plugins/SubMenu/SubMenu.xcconfig new file mode 100644 index 0000000..c8593b3 --- /dev/null +++ b/src/Plugins/SubMenu/SubMenu.xcconfig @@ -0,0 +1,12 @@ +// +// SubMenu.xcconfig +// SubMenu +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/SubMenu/SubMenu.xcodeproj/project.pbxproj b/src/Plugins/SubMenu/SubMenu.xcodeproj/project.pbxproj index a0fbbfa..452a863 100644 --- a/src/Plugins/SubMenu/SubMenu.xcodeproj/project.pbxproj +++ b/src/Plugins/SubMenu/SubMenu.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ E1AF40761B529F8A0017B4DD /* HITPSubMenu.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPSubMenu.h; sourceTree = ""; }; E1AF40771B529F8A0017B4DD /* HITPSubMenu.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPSubMenu.m; sourceTree = ""; }; E1B2C91A1B594889005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; + F8886A26262CC41D0039DE6C /* SubMenu.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = SubMenu.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -34,6 +35,7 @@ E1AF405D1B529F460017B4DD = { isa = PBXGroup; children = ( + F8886A26262CC41D0039DE6C /* SubMenu.xcconfig */, E1B2C91A1B594889005A9936 /* HITDevKit.framework */, E1AF40681B529F460017B4DD /* SubMenu */, E1AF40671B529F460017B4DD /* Products */, @@ -73,7 +75,6 @@ isa = PBXNativeTarget; buildConfigurationList = E1AF406D1B529F460017B4DD /* Build configuration list for PBXNativeTarget "SubMenu" */; buildPhases = ( - F8B50A2B1D1ED03D003CD614 /* GitVersion */, E1AF40621B529F460017B4DD /* Sources */, E1AF40631B529F460017B4DD /* Frameworks */, E1AF40641B529F460017B4DD /* Resources */, @@ -93,7 +94,7 @@ E1AF405E1B529F460017B4DD /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E1AF40651B529F460017B4DD = { @@ -131,23 +132,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A2B1D1ED03D003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E1AF40621B529F460017B4DD /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -162,6 +146,7 @@ /* Begin XCBuildConfiguration section */ E1AF406B1B529F460017B4DD /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A26262CC41D0039DE6C /* SubMenu.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -183,6 +168,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -216,6 +202,7 @@ }; E1AF406C1B529F460017B4DD /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A26262CC41D0039DE6C /* SubMenu.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -237,6 +224,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/SubMenu/SubMenu/Info.plist b/src/Plugins/SubMenu/SubMenu/Info.plist index 6bd8d68..bf9b0dd 100644 --- a/src/Plugins/SubMenu/SubMenu/Info.plist +++ b/src/Plugins/SubMenu/SubMenu/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.1 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.submenu NSHumanReadableCopyright diff --git a/src/Plugins/TestHTTP/TestHTTP.xcconfig b/src/Plugins/TestHTTP/TestHTTP.xcconfig new file mode 100644 index 0000000..6dba93e --- /dev/null +++ b/src/Plugins/TestHTTP/TestHTTP.xcconfig @@ -0,0 +1,12 @@ +// +// TestHTTP.xcconfig +// TestHTTP +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/TestHTTP/TestHTTP.xcodeproj/project.pbxproj b/src/Plugins/TestHTTP/TestHTTP.xcodeproj/project.pbxproj index edb45c8..b5752d3 100644 --- a/src/Plugins/TestHTTP/TestHTTP.xcodeproj/project.pbxproj +++ b/src/Plugins/TestHTTP/TestHTTP.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ E12F1E531B523574005A4418 /* HITPTestHTTP.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPTestHTTP.h; sourceTree = ""; }; E12F1E541B523574005A4418 /* HITPTestHTTP.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPTestHTTP.m; sourceTree = ""; }; E1B2C9121B594164005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; + F8886A24262CC3D70039DE6C /* TestHTTP.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = TestHTTP.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -34,6 +35,7 @@ E12F1E371B52355B005A4418 = { isa = PBXGroup; children = ( + F8886A24262CC3D70039DE6C /* TestHTTP.xcconfig */, E1B2C9121B594164005A9936 /* HITDevKit.framework */, E12F1E421B52355B005A4418 /* TestHTTP */, E12F1E411B52355B005A4418 /* Products */, @@ -73,7 +75,6 @@ isa = PBXNativeTarget; buildConfigurationList = E12F1E471B52355B005A4418 /* Build configuration list for PBXNativeTarget "TestHTTP" */; buildPhases = ( - F8B50A281D1ECFCA003CD614 /* GitVersion */, E12F1E3C1B52355B005A4418 /* Sources */, E12F1E3D1B52355B005A4418 /* Frameworks */, E12F1E3E1B52355B005A4418 /* Resources */, @@ -93,7 +94,7 @@ E12F1E381B52355B005A4418 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E12F1E3F1B52355B005A4418 = { @@ -131,23 +132,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A281D1ECFCA003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E12F1E3C1B52355B005A4418 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -162,6 +146,7 @@ /* Begin XCBuildConfiguration section */ E12F1E451B52355B005A4418 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A24262CC3D70039DE6C /* TestHTTP.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -183,6 +168,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -216,6 +202,7 @@ }; E12F1E461B52355B005A4418 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A24262CC3D70039DE6C /* TestHTTP.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -237,6 +224,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/TestHTTP/TestHTTP/Info.plist b/src/Plugins/TestHTTP/TestHTTP/Info.plist index 9006f93..ebc17e5 100644 --- a/src/Plugins/TestHTTP/TestHTTP/Info.plist +++ b/src/Plugins/TestHTTP/TestHTTP/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.2 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.test.http NSHumanReadableCopyright diff --git a/src/Plugins/Title/Title.xcconfig b/src/Plugins/Title/Title.xcconfig new file mode 100644 index 0000000..2b63c88 --- /dev/null +++ b/src/Plugins/Title/Title.xcconfig @@ -0,0 +1,12 @@ +// +// Title.xcconfig +// Title +// +// Created by Yoann Gini on 18/04/2021. +// Copyright © 2021 Yoann Gini (Open Source Project). All rights reserved. +// + +// Configuration settings file format documentation can be found at: +// https://help.apple.com/xcode/#/dev745c5c974 + +#include "../../Hello-IT.xcconfig" diff --git a/src/Plugins/Title/Title.xcodeproj/project.pbxproj b/src/Plugins/Title/Title.xcodeproj/project.pbxproj index dc4ef7c..f9ca0cb 100644 --- a/src/Plugins/Title/Title.xcodeproj/project.pbxproj +++ b/src/Plugins/Title/Title.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ E177439A1B51F2EE00A5B406 /* HITPTitle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HITPTitle.h; sourceTree = ""; }; E177439B1B51F2EE00A5B406 /* HITPTitle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HITPTitle.m; sourceTree = ""; }; E1B2C9101B593D01005A9936 /* HITDevKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = HITDevKit.framework; path = "../../../../../Library/Developer/Xcode/DerivedData/Hello_IT-dblktlmawojysuccadblmqsuewcj/Build/Products/Debug/HITDevKit.framework"; sourceTree = ""; }; + F8886A23262CC3B50039DE6C /* Title.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Title.xcconfig; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -34,6 +35,7 @@ E17743811B51F2C900A5B406 = { isa = PBXGroup; children = ( + F8886A23262CC3B50039DE6C /* Title.xcconfig */, E1B2C9101B593D01005A9936 /* HITDevKit.framework */, E177438C1B51F2C900A5B406 /* Title */, E177438B1B51F2C900A5B406 /* Products */, @@ -73,7 +75,6 @@ isa = PBXNativeTarget; buildConfigurationList = E17743911B51F2C900A5B406 /* Build configuration list for PBXNativeTarget "Title" */; buildPhases = ( - F8B50A261D1ECF8A003CD614 /* GitVersion */, E17743861B51F2C900A5B406 /* Sources */, E17743871B51F2C900A5B406 /* Frameworks */, E17743881B51F2C900A5B406 /* Resources */, @@ -93,7 +94,7 @@ E17743821B51F2C900A5B406 /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1020; + LastUpgradeCheck = 1230; ORGANIZATIONNAME = "Yoann Gini (Open Source Project)"; TargetAttributes = { E17743891B51F2C900A5B406 = { @@ -131,23 +132,6 @@ }; /* End PBXResourcesBuildPhase section */ -/* Begin PBXShellScriptBuildPhase section */ - F8B50A261D1ECF8A003CD614 /* GitVersion */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = GitVersion; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "set -o errexit\nset -o nounset\n\nVERSION=$(git rev-list HEAD | wc -l)\n\n/usr/libexec/PlistBuddy -c \"Set :CFBundleVersion $VERSION\" \"${INFOPLIST_FILE}\""; - }; -/* End PBXShellScriptBuildPhase section */ - /* Begin PBXSourcesBuildPhase section */ E17743861B51F2C900A5B406 /* Sources */ = { isa = PBXSourcesBuildPhase; @@ -162,6 +146,7 @@ /* Begin XCBuildConfiguration section */ E177438F1B51F2C900A5B406 /* Debug */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A23262CC3B50039DE6C /* Title.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -183,6 +168,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; @@ -216,6 +202,7 @@ }; E17743901B51F2C900A5B406 /* Release */ = { isa = XCBuildConfiguration; + baseConfigurationReference = F8886A23262CC3B50039DE6C /* Title.xcconfig */; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; @@ -237,6 +224,7 @@ CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; CLANG_WARN_STRICT_PROTOTYPES = YES; CLANG_WARN_SUSPICIOUS_MOVE = YES; diff --git a/src/Plugins/Title/Title/Info.plist b/src/Plugins/Title/Title/Info.plist index 1fa8b95..3020b7f 100644 --- a/src/Plugins/Title/Title/Info.plist +++ b/src/Plugins/Title/Title/Info.plist @@ -15,11 +15,11 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.0 + $(MARKETING_VERSION) CFBundleSignature ???? CFBundleVersion - 367 + $(BUILD_VERSION) HITPFunctionIdentifier public.title NSHumanReadableCopyright