Skip to content

Commit 0406e38

Browse files
committed
update build for newer xcode
Updates for changes to XCode 16.2 and makes Sonoma the minimum version of macOS
1 parent 24810e2 commit 0406e38

File tree

5 files changed

+37
-24
lines changed

5 files changed

+37
-24
lines changed

README.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@ user.
88

99
![supreSSHion screenshot](doc/supresshion_screenshot.png)
1010

11+
Minimum version of macOS for the build is macOS 14.x/Sonoma.
12+
1113
## History
1214

1315
Best practice is to unload your ssh keys from ssh-agent when you're
@@ -17,7 +19,7 @@ remembers to do this themselves.
1719
Long ago I used a tool called SSHKeyChain that filled in for ssh-agent
1820
before OS X had it well integrated. Besides asking you for your key
1921
when it was needed, it would remove the keys on certain events such as
20-
the screen locking.
22+
the screen locking.
2123

2224
SSHKeyChain fell out of support and then a friend of mine wrote a [blog
2325
post](https://www.dribin.org/dave/blog/archives/2007/11/28/securing_ssh_agent/)
@@ -51,7 +53,7 @@ automatically creates that environmental variable when you log in.
5153
If the key removal functionality is disabled lock events will not
5254
trigger key removal. When the screen is locked and the expiration
5355
time of the disable has been reached the keys will be removed.
54-
56+
5557
When a sleep event is received, it will reactivate the key removal if
5658
the user had disabled the key unloading functionality.
5759

supreSSHion.xcodeproj/project.pbxproj

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -113,7 +113,8 @@
113113
DE3EE3AA207B923900536B64 /* Project object */ = {
114114
isa = PBXProject;
115115
attributes = {
116-
LastUpgradeCheck = 1240;
116+
BuildIndependentTargetsInParallel = YES;
117+
LastUpgradeCheck = 1620;
117118
ORGANIZATIONNAME = "Keith T. Garner";
118119
TargetAttributes = {
119120
DE3EE3B1207B923900536B64 = {
@@ -191,6 +192,7 @@
191192
isa = XCBuildConfiguration;
192193
buildSettings = {
193194
ALWAYS_SEARCH_USER_PATHS = NO;
195+
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
194196
CLANG_ANALYZER_NONNULL = YES;
195197
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
196198
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
@@ -222,9 +224,11 @@
222224
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
223225
CODE_SIGN_IDENTITY = "-";
224226
COPY_PHASE_STRIP = NO;
227+
DEAD_CODE_STRIPPING = YES;
225228
DEBUG_INFORMATION_FORMAT = dwarf;
226229
ENABLE_STRICT_OBJC_MSGSEND = YES;
227230
ENABLE_TESTABILITY = YES;
231+
ENABLE_USER_SCRIPT_SANDBOXING = YES;
228232
GCC_C_LANGUAGE_STANDARD = gnu11;
229233
GCC_DYNAMIC_NO_PIC = NO;
230234
GCC_NO_COMMON_BLOCKS = YES;
@@ -239,7 +243,7 @@
239243
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
240244
GCC_WARN_UNUSED_FUNCTION = YES;
241245
GCC_WARN_UNUSED_VARIABLE = YES;
242-
MACOSX_DEPLOYMENT_TARGET = 10.14;
246+
MACOSX_DEPLOYMENT_TARGET = 11.0;
243247
MTL_ENABLE_DEBUG_INFO = YES;
244248
ONLY_ACTIVE_ARCH = YES;
245249
SDKROOT = macosx;
@@ -250,6 +254,7 @@
250254
isa = XCBuildConfiguration;
251255
buildSettings = {
252256
ALWAYS_SEARCH_USER_PATHS = NO;
257+
ASSETCATALOG_COMPILER_GENERATE_SWIFT_ASSET_SYMBOL_EXTENSIONS = YES;
253258
CLANG_ANALYZER_NONNULL = YES;
254259
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
255260
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
@@ -281,9 +286,11 @@
281286
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
282287
CODE_SIGN_IDENTITY = "-";
283288
COPY_PHASE_STRIP = NO;
289+
DEAD_CODE_STRIPPING = YES;
284290
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
285291
ENABLE_NS_ASSERTIONS = NO;
286292
ENABLE_STRICT_OBJC_MSGSEND = YES;
293+
ENABLE_USER_SCRIPT_SANDBOXING = YES;
287294
GCC_C_LANGUAGE_STANDARD = gnu11;
288295
GCC_NO_COMMON_BLOCKS = YES;
289296
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
@@ -292,7 +299,7 @@
292299
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
293300
GCC_WARN_UNUSED_FUNCTION = YES;
294301
GCC_WARN_UNUSED_VARIABLE = YES;
295-
MACOSX_DEPLOYMENT_TARGET = 10.14;
302+
MACOSX_DEPLOYMENT_TARGET = 11.0;
296303
MTL_ENABLE_DEBUG_INFO = NO;
297304
SDKROOT = macosx;
298305
SWIFT_COMPILATION_MODE = wholemodule;
@@ -304,18 +311,20 @@
304311
buildSettings = {
305312
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
306313
CLANG_ENABLE_MODULES = YES;
307-
CODE_SIGN_IDENTITY = "Mac Developer";
314+
CODE_SIGN_IDENTITY = "Apple Development";
308315
CODE_SIGN_STYLE = Automatic;
309316
COMBINE_HIDPI_IMAGES = YES;
317+
DEAD_CODE_STRIPPING = YES;
310318
DEVELOPMENT_TEAM = DAJ4PZBQR6;
311319
ENABLE_HARDENED_RUNTIME = YES;
312320
INFOPLIST_FILE = supreSSHion/Info.plist;
321+
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities";
313322
LD_RUNPATH_SEARCH_PATHS = (
314323
"$(inherited)",
315324
"@executable_path/../Frameworks",
316325
);
317-
MACOSX_DEPLOYMENT_TARGET = 10.14;
318-
MARKETING_VERSION = 1.0;
326+
MACOSX_DEPLOYMENT_TARGET = 14.6;
327+
MARKETING_VERSION = 1.1;
319328
PRODUCT_BUNDLE_IDENTIFIER = com.kgarner.supreSSHion;
320329
PRODUCT_NAME = "$(TARGET_NAME)";
321330
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -331,18 +340,20 @@
331340
buildSettings = {
332341
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
333342
CLANG_ENABLE_MODULES = YES;
334-
CODE_SIGN_IDENTITY = "Mac Developer";
343+
CODE_SIGN_IDENTITY = "Apple Development";
335344
CODE_SIGN_STYLE = Automatic;
336345
COMBINE_HIDPI_IMAGES = YES;
346+
DEAD_CODE_STRIPPING = YES;
337347
DEVELOPMENT_TEAM = DAJ4PZBQR6;
338348
ENABLE_HARDENED_RUNTIME = YES;
339349
INFOPLIST_FILE = supreSSHion/Info.plist;
350+
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities";
340351
LD_RUNPATH_SEARCH_PATHS = (
341352
"$(inherited)",
342353
"@executable_path/../Frameworks",
343354
);
344-
MACOSX_DEPLOYMENT_TARGET = 10.14;
345-
MARKETING_VERSION = 1.0;
355+
MACOSX_DEPLOYMENT_TARGET = 14.6;
356+
MARKETING_VERSION = 1.1;
346357
PRODUCT_BUNDLE_IDENTIFIER = com.kgarner.supreSSHion;
347358
PRODUCT_NAME = "$(TARGET_NAME)";
348359
PROVISIONING_PROFILE_SPECIFIER = "";

supreSSHion.xcodeproj/xcshareddata/xcschemes/supreSSHion.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1250"
3+
LastUpgradeVersion = "1620"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"

supreSSHion/AboutWindow.xib

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="18122" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
2+
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="23504" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
33
<dependencies>
44
<deployment identifier="macosx"/>
5-
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="18122"/>
5+
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="23504"/>
66
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
77
</dependencies>
88
<objects>
@@ -18,7 +18,7 @@
1818
<windowStyleMask key="styleMask" titled="YES" closable="YES"/>
1919
<windowPositionMask key="initialPositionMask" leftStrut="YES" rightStrut="YES" topStrut="YES" bottomStrut="YES"/>
2020
<rect key="contentRect" x="196" y="240" width="381" height="187"/>
21-
<rect key="screenRect" x="0.0" y="0.0" width="2560" height="1415"/>
21+
<rect key="screenRect" x="0.0" y="0.0" width="1512" height="944"/>
2222
<view key="contentView" wantsLayer="YES" id="se5-gp-TjO">
2323
<rect key="frame" x="0.0" y="0.0" width="381" height="187"/>
2424
<autoresizingMask key="autoresizingMask"/>
@@ -28,7 +28,7 @@
2828
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
2929
<imageCell key="cell" refusesFirstResponder="YES" alignment="left" imageScaling="proportionallyDown" image="AboutImage" id="IjI-sL-U1W"/>
3030
</imageView>
31-
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="gna-8t-fzd">
31+
<textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="gna-8t-fzd">
3232
<rect key="frame" x="163" y="157" width="83" height="17"/>
3333
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
3434
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="supreSSHion" id="AXU-gP-bni">
@@ -37,7 +37,7 @@
3737
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
3838
</textFieldCell>
3939
</textField>
40-
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hOT-LI-jCx">
40+
<textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hOT-LI-jCx">
4141
<rect key="frame" x="244" y="157" width="48" height="17"/>
4242
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
4343
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="version" id="fac-04-ELJ">
@@ -57,7 +57,7 @@
5757
<action selector="linkClicked:" target="-2" id="H42-AH-cnH"/>
5858
</connections>
5959
</button>
60-
<textField verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hGG-hh-kJw">
60+
<textField focusRingType="none" verticalHuggingPriority="750" horizontalCompressionResistancePriority="250" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="hGG-hh-kJw">
6161
<rect key="frame" x="115" y="10" width="248" height="58"/>
6262
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
6363
<textFieldCell key="cell" sendsActionOnEndEditing="YES" alignment="justified" title="App icon is Forget by Gregor Cresnar from the Noun Project. It is licensed under Creative Commons CCBY." allowsEditingTextAttributes="YES" id="C0K-a4-bQk">
@@ -66,7 +66,7 @@
6666
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
6767
</textFieldCell>
6868
</textField>
69-
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="oPN-eX-88A">
69+
<textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="oPN-eX-88A">
7070
<rect key="frame" x="200" y="91" width="78" height="17"/>
7171
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
7272
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="MIT License" id="Idk-FP-LAY">
@@ -75,10 +75,10 @@
7575
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>
7676
</textFieldCell>
7777
</textField>
78-
<textField horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Vs7-S4-dLz">
79-
<rect key="frame" x="168" y="110" width="145" height="17"/>
78+
<textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="Vs7-S4-dLz">
79+
<rect key="frame" x="148" y="110" width="183" height="17"/>
8080
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
81-
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="© 2020 Keith T. Garner" id="45O-Ej-Z6w">
81+
<textFieldCell key="cell" scrollable="YES" lineBreakMode="clipping" sendsActionOnEndEditing="YES" title="© 2020-2024 Keith T. Garner" id="45O-Ej-Z6w">
8282
<font key="font" metaFont="system"/>
8383
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
8484
<color key="backgroundColor" name="controlColor" catalog="System" colorSpace="catalog"/>

supreSSHion/Base.lproj/MainMenu.xib

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="14113" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
2+
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="23504" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
33
<dependencies>
44
<deployment identifier="macosx"/>
5-
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="14113"/>
5+
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="23504"/>
66
</dependencies>
77
<objects>
88
<customObject id="-2" userLabel="File's Owner" customClass="NSApplication">

0 commit comments

Comments
 (0)