|
2 | 2 | #Использовать fs
|
3 | 3 | #Использовать tempfiles
|
4 | 4 | #Использовать strings
|
| 5 | +#Использовать cpuinfo |
5 | 6 |
|
6 | 7 | Перем ЭтоWindows;
|
7 | 8 |
|
|
341 | 342 | Если ЭтоВерсия2 И ИспользоватьFDD Тогда
|
342 | 343 | ИмяФайла = "fdd";
|
343 | 344 | ИначеЕсли ЭтоВерсия2 Тогда
|
344 |
| - СистемнаяИнформация = Новый СистемнаяИнформация; |
345 |
| - ИмяФайла = ТипДистрибутиваПоТипуПлатформы().Получить(СистемнаяИнформация.ТипПлатформы); |
| 345 | + ИмяФайла = ТипДистрибутиваТекущейПлатформы(); |
346 | 346 | Иначе
|
347 | 347 | ИмяФайла = "zip";
|
348 | 348 | КонецЕсли;
|
|
357 | 357 |
|
358 | 358 | Ресурс = СтрСоединить(ЧастиПути, "/");
|
359 | 359 | Возврат Ресурс;
|
360 |
| - |
| 360 | + |
361 | 361 | КонецФункции
|
362 | 362 |
|
363 |
| -Функция ТипДистрибутиваПоТипуПлатформы() |
| 363 | +Функция ТипДистрибутиваТекущейПлатформы() |
364 | 364 |
|
365 |
| - Результат = Новый Соответствие; |
| 365 | + СистемнаяИнформация = Новый СистемнаяИнформация; |
| 366 | + ТекущаяПлатформа = СистемнаяИнформация.ТипПлатформы; |
366 | 367 |
|
367 |
| - Результат.Вставить(ТипПлатформы.Windows_x86_64, "scd-win"); |
368 |
| - Результат.Вставить(ТипПлатформы.Windows_x86, "scd-win"); |
369 |
| - Результат.Вставить(ТипПлатформы.Linux_x86_64, "scd-lin"); |
370 |
| - Результат.Вставить(ТипПлатформы.Linux_x86, "scd-lin"); |
371 |
| - Результат.Вставить(ТипПлатформы.MacOS_x86_64, "osx-x64"); |
372 |
| - Результат.Вставить(ТипПлатформы.MacOS_x86, "osx-x64"); |
| 368 | + Если ТекущаяПлатформа = ТипПлатформы.Windows_x86_64 |
| 369 | + Или ТекущаяПлатформа = ТипПлатформы.Windows_x86 Тогда |
| 370 | + Возврат "scd-win"; |
| 371 | + ИначеЕсли ТекущаяПлатформа = ТипПлатформы.Linux_x86_64 |
| 372 | + Или ТекущаяПлатформа = ТипПлатформы.Linux_x86 Тогда |
| 373 | + Возврат "scd-lin"; |
| 374 | + ИначеЕсли ТекущаяПлатформа = ТипПлатформы.MacOS_x86_64 |
| 375 | + Или ТекущаяПлатформа = ТипПлатформы.MacOS_x86 Тогда |
373 | 376 |
|
374 |
| - // TODO: Как определить что это MacOS_ARM? osx-arm64 |
| 377 | + ИнформацияОПроцессоре = Новый ИнформацияОПроцессоре; |
| 378 | + АрхитектураПроцессора = ИнформацияОПроцессоре.Архитектура; |
375 | 379 |
|
376 |
| - Возврат Результат; |
| 380 | + Если АрхитектураПроцессора = АрхитектурыПроцессоров.ARM |
| 381 | + Или АрхитектураПроцессора = АрхитектурыПроцессоров.ARM64 Тогда |
| 382 | + Возврат "osx-arm64"; |
| 383 | + Иначе |
| 384 | + Возврат "osx-x64"; |
| 385 | + КонецЕсли; |
| 386 | + |
| 387 | + Иначе |
| 388 | + ВызватьИсключение "Не удалось определить текущую операционную систему"; |
| 389 | + КонецЕсли; |
377 | 390 |
|
378 | 391 | КонецФункции
|
379 | 392 |
|
|
0 commit comments