Skip to content

Commit ca39757

Browse files
committed
20250101-1
Restore support for Visual Studio for Mac
1 parent 66ffcb4 commit ca39757

File tree

19 files changed

+1199
-72
lines changed

19 files changed

+1199
-72
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,3 +21,5 @@ obj/
2121
Packages/packages-lock.json
2222
Packages/com.unity.ide.visualstudio/Editor/COMIntegration/Release/build/
2323
Packages/com.unity.ide.visualstudio/Editor/COMIntegration/Release/COMIntegration.exe
24+
Packages/com.unity.ide.visualstudio/Editor/Plugins/AppleEventIntegration.bundle/
25+
!Packages/com.unity.ide.visualstudio/Editor/Plugins/AppleEventIntegration.bundle/**/*.meta
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#!/bin/sh
2+
olddir="$(pwd)"
3+
cd "$(dirname $0)/../Packages/com.unity.ide.visualstudio/Editor/AppleEventIntegration~"
4+
xcodebuild -configuration Release
5+
cp -R build/Release/AppleEventIntegration.bundle/* ../Plugins/AppleEventIntegration.bundle/
6+
cd "$olddir"

.yamato/CI.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,23 @@ build_cpp_win:
4040
- "Packages/com.unity.ide.visualstudio/Editor/COMIntegration/Release/COMIntegration.exe"
4141

4242

43+
build_native_mac:
44+
name: Build Apple Event Integration
45+
agent:
46+
type: Unity::VM::osx
47+
image: test-platform/macos-10.15:stable
48+
flavor: b1.large
49+
config:
50+
env_vars:
51+
- PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin
52+
commands:
53+
- .scripts/build-appleeventintegration.sh
54+
artifacts:
55+
appleeventintegration:
56+
paths:
57+
- "Packages/com.unity.ide.visualstudio/Editor/Plugins/AppleEventIntegration.bundle/**"
58+
59+
4360
pack:
4461
name: Pack
4562
agent:
@@ -55,6 +72,7 @@ pack:
5572
- "**/upm-ci~/packages/**/*"
5673
dependencies:
5774
- .yamato/CI.yml#build_cpp_win
75+
- .yamato/CI.yml#build_native_mac
5876

5977

6078
commit_ci_release:
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
xcuserdata/
2+
build/
Lines changed: 308 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,308 @@
1+
// !$*UTF8*$!
2+
{
3+
archiveVersion = 1;
4+
classes = {
5+
};
6+
objectVersion = 50;
7+
objects = {
8+
9+
/* Begin PBXBuildFile section */
10+
E08E02FF236392D000A4B1BE /* main.mm in Sources */ = {isa = PBXBuildFile; fileRef = E08E02FE236392D000A4B1BE /* main.mm */; };
11+
E08E03022363933B00A4B1BE /* AppKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E08E03012363933B00A4B1BE /* AppKit.framework */; };
12+
/* End PBXBuildFile section */
13+
14+
/* Begin PBXFileReference section */
15+
E08E02F5236392A300A4B1BE /* AppleEventIntegration.bundle */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = AppleEventIntegration.bundle; sourceTree = BUILT_PRODUCTS_DIR; };
16+
E08E02F8236392A300A4B1BE /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
17+
E08E02FE236392D000A4B1BE /* main.mm */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.objcpp; path = main.mm; sourceTree = "<group>"; };
18+
E08E03012363933B00A4B1BE /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = System/Library/Frameworks/AppKit.framework; sourceTree = SDKROOT; };
19+
/* End PBXFileReference section */
20+
21+
/* Begin PBXFrameworksBuildPhase section */
22+
E08E02F2236392A300A4B1BE /* Frameworks */ = {
23+
isa = PBXFrameworksBuildPhase;
24+
buildActionMask = 2147483647;
25+
files = (
26+
E08E03022363933B00A4B1BE /* AppKit.framework in Frameworks */,
27+
);
28+
runOnlyForDeploymentPostprocessing = 0;
29+
};
30+
/* End PBXFrameworksBuildPhase section */
31+
32+
/* Begin PBXGroup section */
33+
E08E02EC236392A300A4B1BE = {
34+
isa = PBXGroup;
35+
children = (
36+
E08E02F7236392A300A4B1BE /* AppleEventIntegration */,
37+
E08E02F6236392A300A4B1BE /* Products */,
38+
E08E03002363933B00A4B1BE /* Frameworks */,
39+
);
40+
sourceTree = "<group>";
41+
};
42+
E08E02F6236392A300A4B1BE /* Products */ = {
43+
isa = PBXGroup;
44+
children = (
45+
E08E02F5236392A300A4B1BE /* AppleEventIntegration.bundle */,
46+
);
47+
name = Products;
48+
sourceTree = "<group>";
49+
};
50+
E08E02F7236392A300A4B1BE /* AppleEventIntegration */ = {
51+
isa = PBXGroup;
52+
children = (
53+
E08E02F8236392A300A4B1BE /* Info.plist */,
54+
E08E02FE236392D000A4B1BE /* main.mm */,
55+
);
56+
path = AppleEventIntegration;
57+
sourceTree = "<group>";
58+
};
59+
E08E03002363933B00A4B1BE /* Frameworks */ = {
60+
isa = PBXGroup;
61+
children = (
62+
E08E03012363933B00A4B1BE /* AppKit.framework */,
63+
);
64+
name = Frameworks;
65+
sourceTree = "<group>";
66+
};
67+
/* End PBXGroup section */
68+
69+
/* Begin PBXNativeTarget section */
70+
E08E02F4236392A300A4B1BE /* AppleEventIntegration */ = {
71+
isa = PBXNativeTarget;
72+
buildConfigurationList = E08E02FB236392A300A4B1BE /* Build configuration list for PBXNativeTarget "AppleEventIntegration" */;
73+
buildPhases = (
74+
E08E02F1236392A300A4B1BE /* Sources */,
75+
E08E02F2236392A300A4B1BE /* Frameworks */,
76+
E08E02F3236392A300A4B1BE /* Resources */,
77+
);
78+
buildRules = (
79+
);
80+
dependencies = (
81+
);
82+
name = AppleEventIntegration;
83+
productName = AppleEventIntegration;
84+
productReference = E08E02F5236392A300A4B1BE /* AppleEventIntegration.bundle */;
85+
productType = "com.apple.product-type.bundle";
86+
};
87+
/* End PBXNativeTarget section */
88+
89+
/* Begin PBXProject section */
90+
E08E02ED236392A300A4B1BE /* Project object */ = {
91+
isa = PBXProject;
92+
attributes = {
93+
LastUpgradeCheck = 1200;
94+
ORGANIZATIONNAME = Unity;
95+
TargetAttributes = {
96+
E08E02F4236392A300A4B1BE = {
97+
CreatedOnToolsVersion = 11.1;
98+
};
99+
};
100+
};
101+
buildConfigurationList = E08E02F0236392A300A4B1BE /* Build configuration list for PBXProject "AppleEventIntegration" */;
102+
compatibilityVersion = "Xcode 9.3";
103+
developmentRegion = en;
104+
hasScannedForEncodings = 0;
105+
knownRegions = (
106+
en,
107+
Base,
108+
);
109+
mainGroup = E08E02EC236392A300A4B1BE;
110+
productRefGroup = E08E02F6236392A300A4B1BE /* Products */;
111+
projectDirPath = "";
112+
projectRoot = "";
113+
targets = (
114+
E08E02F4236392A300A4B1BE /* AppleEventIntegration */,
115+
);
116+
};
117+
/* End PBXProject section */
118+
119+
/* Begin PBXResourcesBuildPhase section */
120+
E08E02F3236392A300A4B1BE /* Resources */ = {
121+
isa = PBXResourcesBuildPhase;
122+
buildActionMask = 2147483647;
123+
files = (
124+
);
125+
runOnlyForDeploymentPostprocessing = 0;
126+
};
127+
/* End PBXResourcesBuildPhase section */
128+
129+
/* Begin PBXSourcesBuildPhase section */
130+
E08E02F1236392A300A4B1BE /* Sources */ = {
131+
isa = PBXSourcesBuildPhase;
132+
buildActionMask = 2147483647;
133+
files = (
134+
E08E02FF236392D000A4B1BE /* main.mm in Sources */,
135+
);
136+
runOnlyForDeploymentPostprocessing = 0;
137+
};
138+
/* End PBXSourcesBuildPhase section */
139+
140+
/* Begin XCBuildConfiguration section */
141+
E08E02F9236392A300A4B1BE /* Debug */ = {
142+
isa = XCBuildConfiguration;
143+
buildSettings = {
144+
ALWAYS_SEARCH_USER_PATHS = NO;
145+
CLANG_ANALYZER_NONNULL = YES;
146+
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
147+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
148+
CLANG_CXX_LIBRARY = "libc++";
149+
CLANG_ENABLE_MODULES = YES;
150+
CLANG_ENABLE_OBJC_ARC = YES;
151+
CLANG_ENABLE_OBJC_WEAK = YES;
152+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
153+
CLANG_WARN_BOOL_CONVERSION = YES;
154+
CLANG_WARN_COMMA = YES;
155+
CLANG_WARN_CONSTANT_CONVERSION = YES;
156+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
157+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
158+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
159+
CLANG_WARN_EMPTY_BODY = YES;
160+
CLANG_WARN_ENUM_CONVERSION = YES;
161+
CLANG_WARN_INFINITE_RECURSION = YES;
162+
CLANG_WARN_INT_CONVERSION = YES;
163+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
164+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
165+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
166+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
167+
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
168+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
169+
CLANG_WARN_STRICT_PROTOTYPES = YES;
170+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
171+
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
172+
CLANG_WARN_UNREACHABLE_CODE = YES;
173+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
174+
COPY_PHASE_STRIP = NO;
175+
DEBUG_INFORMATION_FORMAT = dwarf;
176+
ENABLE_STRICT_OBJC_MSGSEND = YES;
177+
ENABLE_TESTABILITY = YES;
178+
GCC_C_LANGUAGE_STANDARD = gnu11;
179+
GCC_DYNAMIC_NO_PIC = NO;
180+
GCC_NO_COMMON_BLOCKS = YES;
181+
GCC_OPTIMIZATION_LEVEL = 0;
182+
GCC_PREPROCESSOR_DEFINITIONS = (
183+
"DEBUG=1",
184+
"$(inherited)",
185+
);
186+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
187+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
188+
GCC_WARN_UNDECLARED_SELECTOR = YES;
189+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
190+
GCC_WARN_UNUSED_FUNCTION = YES;
191+
GCC_WARN_UNUSED_VARIABLE = YES;
192+
MACOSX_DEPLOYMENT_TARGET = 10.13;
193+
MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE;
194+
MTL_FAST_MATH = YES;
195+
ONLY_ACTIVE_ARCH = YES;
196+
SDKROOT = macosx;
197+
};
198+
name = Debug;
199+
};
200+
E08E02FA236392A300A4B1BE /* Release */ = {
201+
isa = XCBuildConfiguration;
202+
buildSettings = {
203+
ALWAYS_SEARCH_USER_PATHS = NO;
204+
CLANG_ANALYZER_NONNULL = YES;
205+
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
206+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
207+
CLANG_CXX_LIBRARY = "libc++";
208+
CLANG_ENABLE_MODULES = YES;
209+
CLANG_ENABLE_OBJC_ARC = YES;
210+
CLANG_ENABLE_OBJC_WEAK = YES;
211+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
212+
CLANG_WARN_BOOL_CONVERSION = YES;
213+
CLANG_WARN_COMMA = YES;
214+
CLANG_WARN_CONSTANT_CONVERSION = YES;
215+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
216+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
217+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
218+
CLANG_WARN_EMPTY_BODY = YES;
219+
CLANG_WARN_ENUM_CONVERSION = YES;
220+
CLANG_WARN_INFINITE_RECURSION = YES;
221+
CLANG_WARN_INT_CONVERSION = YES;
222+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
223+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
224+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
225+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
226+
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
227+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
228+
CLANG_WARN_STRICT_PROTOTYPES = YES;
229+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
230+
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
231+
CLANG_WARN_UNREACHABLE_CODE = YES;
232+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
233+
COPY_PHASE_STRIP = NO;
234+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
235+
ENABLE_NS_ASSERTIONS = NO;
236+
ENABLE_STRICT_OBJC_MSGSEND = YES;
237+
GCC_C_LANGUAGE_STANDARD = gnu11;
238+
GCC_NO_COMMON_BLOCKS = YES;
239+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
240+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
241+
GCC_WARN_UNDECLARED_SELECTOR = YES;
242+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
243+
GCC_WARN_UNUSED_FUNCTION = YES;
244+
GCC_WARN_UNUSED_VARIABLE = YES;
245+
MACOSX_DEPLOYMENT_TARGET = 10.13;
246+
MTL_ENABLE_DEBUG_INFO = NO;
247+
MTL_FAST_MATH = YES;
248+
SDKROOT = macosx;
249+
};
250+
name = Release;
251+
};
252+
E08E02FC236392A300A4B1BE /* Debug */ = {
253+
isa = XCBuildConfiguration;
254+
buildSettings = {
255+
CODE_SIGN_STYLE = Automatic;
256+
COMBINE_HIDPI_IMAGES = YES;
257+
DEVELOPMENT_TEAM = "";
258+
INFOPLIST_FILE = AppleEventIntegration/Info.plist;
259+
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
260+
MACOSX_DEPLOYMENT_TARGET = 10.13;
261+
PRODUCT_BUNDLE_IDENTIFIER = com.unity.visualstudio.AppleEventIntegration;
262+
PRODUCT_NAME = "$(TARGET_NAME)";
263+
SKIP_INSTALL = YES;
264+
WRAPPER_EXTENSION = bundle;
265+
};
266+
name = Debug;
267+
};
268+
E08E02FD236392A300A4B1BE /* Release */ = {
269+
isa = XCBuildConfiguration;
270+
buildSettings = {
271+
CODE_SIGN_STYLE = Automatic;
272+
COMBINE_HIDPI_IMAGES = YES;
273+
DEVELOPMENT_TEAM = "";
274+
INFOPLIST_FILE = AppleEventIntegration/Info.plist;
275+
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Bundles";
276+
MACOSX_DEPLOYMENT_TARGET = 10.13;
277+
PRODUCT_BUNDLE_IDENTIFIER = com.unity.visualstudio.AppleEventIntegration;
278+
PRODUCT_NAME = "$(TARGET_NAME)";
279+
SKIP_INSTALL = YES;
280+
WRAPPER_EXTENSION = bundle;
281+
};
282+
name = Release;
283+
};
284+
/* End XCBuildConfiguration section */
285+
286+
/* Begin XCConfigurationList section */
287+
E08E02F0236392A300A4B1BE /* Build configuration list for PBXProject "AppleEventIntegration" */ = {
288+
isa = XCConfigurationList;
289+
buildConfigurations = (
290+
E08E02F9236392A300A4B1BE /* Debug */,
291+
E08E02FA236392A300A4B1BE /* Release */,
292+
);
293+
defaultConfigurationIsVisible = 0;
294+
defaultConfigurationName = Release;
295+
};
296+
E08E02FB236392A300A4B1BE /* Build configuration list for PBXNativeTarget "AppleEventIntegration" */ = {
297+
isa = XCConfigurationList;
298+
buildConfigurations = (
299+
E08E02FC236392A300A4B1BE /* Debug */,
300+
E08E02FD236392A300A4B1BE /* Release */,
301+
);
302+
defaultConfigurationIsVisible = 0;
303+
defaultConfigurationName = Release;
304+
};
305+
/* End XCConfigurationList section */
306+
};
307+
rootObject = E08E02ED236392A300A4B1BE /* Project object */;
308+
}

Packages/com.unity.ide.visualstudio/Editor/AppleEventIntegration~/AppleEventIntegration.xcodeproj/project.xcworkspace/contents.xcworkspacedata

Lines changed: 7 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict>
5+
<key>IDEDidComputeMac32BitWarning</key>
6+
<true/>
7+
</dict>
8+
</plist>

0 commit comments

Comments
 (0)