Кроссплатформенный скрипт сборки, который может вызывать MSBuild или Xbuild в зависимости от среды?

#c# #python #scripting #msbuild #mono

#c# #python #сценарии #msbuild #mono

Вопрос:

У меня есть простой.Сетевое консольное приложение, которое имеет зависимости только от фреймворка. Он может нормально компилироваться либо с MSBuild в Windows, либо с Mono / XBuild в Linux. Это часть более крупного проекта, в котором есть скрипт сборки на python. Есть ли какой-нибудь простой способ определить наиболее подходящий движок сборки (msbuild / xbuild) и использовать его?

Другими словами, у меня есть ‘build.py’ и я хочу, чтобы это вызывало xbuild или msbuild по мере необходимости.

Ответ №1:

Гораздо проще было бы написать небольшой скрипт оболочки для Linux или OSX, который запускал xbuild, но назывался msbuild. Я думаю, аргументы те же.

Комментарии:

1. Верно — но я полагаю, это означало бы убедиться, что, например, %WinDir% Microsoft.NET Framework v3.5 и ‘.’ был в $ PATH, так что одна команда ‘msbuild’ будет успешной на обеих платформах. Если я чего-то не упускаю?

2. @FrepD-Oronge да, это правильно. Но я думаю, что это намного проще сделать в вашем скрипте (скрипт может добавлять что-то в path)