@@ -12,6 +12,32 @@ if [ -z "${1:-}" ]; then
12
12
exit 1
13
13
fi
14
14
15
+ # Use uname to determine what the CPU is.
16
+ cpuname=$( uname -p)
17
+ # Some Linux platforms report unknown for platform, but the arch for machine.
18
+ if [[ " $cpuname " == " unknown" ]]; then
19
+ cpuname=$( uname -m)
20
+ fi
21
+
22
+ case $cpuname in
23
+ aarch64)
24
+ targetArchitecture=arm64
25
+ ;;
26
+ amd64|x86_64)
27
+ targetArchitecture=x64
28
+ ;;
29
+ armv7l)
30
+ targetArchitecture=arm
31
+ ;;
32
+ i686)
33
+ targetArchitecture=x86
34
+ ;;
35
+ * )
36
+ echo " Unknown CPU $cpuname detected, treating it as x64"
37
+ targetArchitecture=x64
38
+ ;;
39
+ esac
40
+
15
41
TARBALL_ROOT=$1
16
42
shift
17
43
@@ -201,28 +227,28 @@ cp $SCRIPT_ROOT/support/tarball/build.sh $TARBALL_ROOT/build.sh
201
227
mkdir -p $TARBALL_ROOT /packages/prebuilt
202
228
mkdir -p $TARBALL_ROOT /packages/source-built
203
229
find $SCRIPT_ROOT /packages/restored/ -name ' *.nupkg' -exec cp {} $TARBALL_ROOT /packages/prebuilt/ \;
204
- find $SCRIPT_ROOT /bin/obj/x64 /Release/nuget-packages -name ' *.nupkg' -exec cp {} $TARBALL_ROOT /packages/prebuilt/ \;
230
+ find $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/nuget-packages -name ' *.nupkg' -exec cp {} $TARBALL_ROOT /packages/prebuilt/ \;
205
231
206
232
# Copy reference-packages from bin dir to reference-packages directory.
207
233
# See corresponding change in dir.props to change ReferencePackagesBasePath conditionally in offline build.
208
234
mkdir -p $TARBALL_ROOT /packages/reference
209
- cp -r $SCRIPT_ROOT /bin/obj/x64 /Release/reference-packages/source $TARBALL_ROOT /packages/reference/source
210
- cp -r $SCRIPT_ROOT /bin/obj/x64 /Release/reference-packages/staging $TARBALL_ROOT /packages/reference/staging
235
+ cp -r $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/reference-packages/source $TARBALL_ROOT /packages/reference/source
236
+ cp -r $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/reference-packages/staging $TARBALL_ROOT /packages/reference/staging
211
237
212
238
# Copy tarballs to ./packages/archive directory
213
239
mkdir -p $TARBALL_ROOT /packages/archive
214
- cp -r $SCRIPT_ROOT /bin/obj/x64 /Release/external-tarballs/* .tar.gz $TARBALL_ROOT /packages/archive/
240
+ cp -r $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/external-tarballs/* .tar.gz $TARBALL_ROOT /packages/archive/
215
241
216
242
# Copy generated source from bin to src/generatedSrc
217
- cp -r $SCRIPT_ROOT /bin/obj/x64 /Release/generatedSrc $TARBALL_ROOT /src/generatedSrc
243
+ cp -r $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/generatedSrc $TARBALL_ROOT /src/generatedSrc
218
244
219
245
if [ -e $SCRIPT_ROOT /testing-smoke/smoke-test-packages ]; then
220
246
cp -rf $SCRIPT_ROOT /testing-smoke/smoke-test-packages $TARBALL_ROOT /packages
221
247
fi
222
248
223
249
echo ' Removing source-built packages from tarball prebuilts...'
224
250
225
- for built_package in $( find $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/ -name ' *.nupkg' | tr ' [:upper:]' ' [:lower:]' )
251
+ for built_package in $( find $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/ -name ' *.nupkg' | tr ' [:upper:]' ' [:lower:]' )
226
252
do
227
253
if [ -e $TARBALL_ROOT /packages/prebuilt/$( basename $built_package ) ]; then
228
254
rm $TARBALL_ROOT /packages/prebuilt/$( basename $built_package )
@@ -235,16 +261,16 @@ done
235
261
echo ' Copying source-built packages to tarball to replace packages needed before they are built...'
236
262
mkdir -p $TARBALL_ROOT /packages/source-built
237
263
cp -r $SCRIPT_ROOT /Tools/source-built/coreclr-tools $TARBALL_ROOT /packages/source-built/
238
- cp $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/* Arcade* .nupkg $TARBALL_ROOT /packages/source-built/
239
- cp $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/* SourceLink* .nupkg $TARBALL_ROOT /packages/source-built/
240
- cp $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/* Build* Tasks* .nupkg $TARBALL_ROOT /packages/source-built/
241
- cp $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/runtime* .nupkg $TARBALL_ROOT /packages/source-built/
242
- cp $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/* DotNetHost* .nupkg $TARBALL_ROOT /packages/source-built/
243
- cp $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/* DotNetAppHost* .nupkg $TARBALL_ROOT /packages/source-built/
264
+ cp $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/* Arcade* .nupkg $TARBALL_ROOT /packages/source-built/
265
+ cp $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/* SourceLink* .nupkg $TARBALL_ROOT /packages/source-built/
266
+ cp $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/* Build* Tasks* .nupkg $TARBALL_ROOT /packages/source-built/
267
+ cp $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/runtime* .nupkg $TARBALL_ROOT /packages/source-built/
268
+ cp $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/* DotNetHost* .nupkg $TARBALL_ROOT /packages/source-built/
269
+ cp $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/* DotNetAppHost* .nupkg $TARBALL_ROOT /packages/source-built/
244
270
245
271
# Setup package version props to include both source-built and running PackageVersions.props
246
- mkdir --parents $TARBALL_ROOT /bin/obj/x64 /Release/
247
- cp $SCRIPT_ROOT /support/tarball/PackageVersions.props $TARBALL_ROOT /bin/obj/x64 /Release/
272
+ mkdir --parents $TARBALL_ROOT /bin/obj/$targetArchitecture /Release/
273
+ cp $SCRIPT_ROOT /support/tarball/PackageVersions.props $TARBALL_ROOT /bin/obj/$targetArchitecture /Release/
248
274
249
275
if [ $INCLUDE_LEAK_DETECTION -eq 1 ]; then
250
276
echo ' Building leak detection MSBuild tasks...'
254
280
255
281
echo ' Removing reference-only packages from tarball prebuilts...'
256
282
257
- for ref_package in $( find $SCRIPT_ROOT /bin/obj/x64 /Release/reference-packages/packages-to-delete/ -name ' *.nupkg' | tr ' [:upper:]' ' [:lower:]' )
283
+ for ref_package in $( find $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/reference-packages/packages-to-delete/ -name ' *.nupkg' | tr ' [:upper:]' ' [:lower:]' )
258
284
do
259
285
if [ -e $TARBALL_ROOT /packages/prebuilt/$( basename $ref_package ) ]; then
260
286
rm $TARBALL_ROOT /packages/prebuilt/$( basename $ref_package )
285
311
echo ' Removing source-built, previously source-built packages and reference packages from il pkg src...'
286
312
OLDIFS=$IFS
287
313
288
- allBuiltPkgs=(` ls $SCRIPT_ROOT /bin/obj/x64 /Release/blob-feed/packages/* .nupkg | xargs -n1 basename | tr ' [:upper:]' ' [:lower:]' ` )
314
+ allBuiltPkgs=(` ls $SCRIPT_ROOT /bin/obj/$targetArchitecture /Release/blob-feed/packages/* .nupkg | xargs -n1 basename | tr ' [:upper:]' ' [:lower:]' ` )
289
315
pushd $TARBALL_ROOT /packages/reference/staging/
290
316
ilSrcPaths=(` find . -maxdepth 2 -mindepth 2` )
291
317
popd
0 commit comments