Skip to content

Conversation

@atsushieno
Copy link
Contributor

Whether you build xamarin-android in debug mode or release mode
should not matter when user wants to build app either in debug or
release mode. Current build system builds only debug mono-android for
Debug configuration and release mono-android for Release configuration,
which only makes it useless and annoying to diagnose the issues that
depends on app build configuration.

Build both libmono-android regardless of xamarin-android builder's
configuration and make it work.

@atsushieno
Copy link
Contributor Author

Sources now incrementally rebuild as expected.
https://gist.github.com/atsushieno/6032735ad395c2dc8d7169b60728dd18

/>
<Exec
Command="$(AndroidToolchainDirectory)\ndk\ndk-build CONFIGURATION=$(Configuration) V=1"
Command="$(AndroidToolchainDirectory)\ndk\ndk-build CONFIGURATION=$(Configuration) NDK_LIBS_OUT=./debug/libs NDK_OUT=./debug/obj V=1"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Brilliant! Where'd you find $(NDK_LIBS_OUT) and $(NDK_OUT)?

That said, could we "reverse" the order from debug\... to obj\debug\..., placing the build artifacts within the obj directory? obj is already ignored by git status, while debug and release won't be, so by using obj\{debug,release} we'll reduce git status spew.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That's simple...
screenshot-encrypted google com 2016-07-07 00-17-55

Whether you build xamarin-android in debug mode or release mode
should not matter when user wants to build app either in debug or
release mode. Current build system builds only debug mono-android for
Debug configuration and release mono-android for Release configuration,
which only makes it useless and annoying to diagnose the issues that
depends on app build configuration.

Build both libmono-android regardless of xamarin-android builder's
configuration and make it work.
@atsushieno atsushieno force-pushed the build-both-debug-release-monodroid-2 branch from 7057b42 to 97e5df0 Compare July 6, 2016 15:51
@jonpryor jonpryor merged commit 40f2cbc into dotnet:master Jul 12, 2016
radical pushed a commit that referenced this pull request May 8, 2018
Eventually -- sooner rather than later? -- we'd like to support
building xamarin-android using `msbuild` instead of `xbuild`.

Unfortunately, that doesn't work, for a variety of reasons.

Appropos to `Xamarin.Android.Cecil` is that if we, from a *clean*
state, build *just*
`xamarin-android/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj`
without a solution, the build fails because
`Xamarin.Android.Cecil.dll` and `Xamarin.Android.Cecil.Mdb.dll` cannot
be resolved or found, because they're copied into the wrong
directories.

Cleanup the `Xamarin.Android.Cecil` project files so that they
increase consistency with the other project files, e.g.
`$(OutputPath)` is `..\..\bin\$(Configuration)`, not
`bin\$(Configuration)`, which also allows a from-clean `msbuild`-based
build of `Xamarin.Android.Build.Tasks.csproj` to not be stopped when
attempting to build `Xamarin.Android.Cecil.dll`.
jonpryor pushed a commit that referenced this pull request May 26, 2022
Changes: dotnet/android-tools@fc3c2ac...20f6112

  * dotnet/android-tools@20f6112: Bump LibZipSharp to 2.0.4 (#166)
  * dotnet/android-tools@e4f0d59: Add support for writing android:roundIcon to Android manifest (#162)

Changes: dotnet/android-libzipsharp@2.0.3...2.0.4

  * dotnet/android-libzipsharp@8ac30f3: Bump Version to 2.0.4 for Release (#109)
  * dotnet/android-libzipsharp@8e22fe1: Use RuntimeInformation to determine the Processor architecture. (#108)
  * dotnet/android-libzipsharp@33f5b01: Bump vcpkg to latest version (#106)
  * dotnet/android-libzipsharp@6fd0a14: [ci] Use new EO compliant build pools (#107)
  * dotnet/android-libzipsharp@d339358: Add a new more complex unit test (#105)

Other changes:

  * 32-bit `libZipSharpNative.dll` is now in
    `x86\libZipSharpNative.dll`.

  * 64-bit `lib64\libZipSharpNative.dll` is now in
    `x64\libZipSharpNative.dll`.
simonrozsival pushed a commit to simonrozsival/xamarin-android that referenced this pull request May 31, 2022
Changes: dotnet/android-tools@fc3c2ac...20f6112

  * dotnet/android-tools@20f6112: Bump LibZipSharp to 2.0.4 (dotnet#166)
  * dotnet/android-tools@e4f0d59: Add support for writing android:roundIcon to Android manifest (dotnet#162)

Changes: dotnet/android-libzipsharp@2.0.3...2.0.4

  * dotnet/android-libzipsharp@8ac30f3: Bump Version to 2.0.4 for Release (dotnet#109)
  * dotnet/android-libzipsharp@8e22fe1: Use RuntimeInformation to determine the Processor architecture. (dotnet#108)
  * dotnet/android-libzipsharp@33f5b01: Bump vcpkg to latest version (dotnet#106)
  * dotnet/android-libzipsharp@6fd0a14: [ci] Use new EO compliant build pools (dotnet#107)
  * dotnet/android-libzipsharp@d339358: Add a new more complex unit test (dotnet#105)

Other changes:

  * 32-bit `libZipSharpNative.dll` is now in
    `x86\libZipSharpNative.dll`.

  * 64-bit `lib64\libZipSharpNative.dll` is now in
    `x64\libZipSharpNative.dll`.
jonathanpeppers referenced this pull request in jonathanpeppers/xamarin-android May 31, 2022
Changes: dotnet/android-tools@fc3c2ac...20f6112

  * dotnet/android-tools@20f6112: Bump LibZipSharp to 2.0.4 (dotnet#166)
  * dotnet/android-tools@e4f0d59: Add support for writing android:roundIcon to Android manifest (dotnet#162)

Changes: dotnet/android-libzipsharp@2.0.3...2.0.4

  * dotnet/android-libzipsharp@8ac30f3: Bump Version to 2.0.4 for Release (#109)
  * dotnet/android-libzipsharp@8e22fe1: Use RuntimeInformation to determine the Processor architecture. (#108)
  * dotnet/android-libzipsharp@33f5b01: Bump vcpkg to latest version (#106)
  * dotnet/android-libzipsharp@6fd0a14: [ci] Use new EO compliant build pools (#107)
  * dotnet/android-libzipsharp@d339358: Add a new more complex unit test (#105)

Other changes:

  * 32-bit `libZipSharpNative.dll` is now in
    `x86\libZipSharpNative.dll`.

  * 64-bit `lib64\libZipSharpNative.dll` is now in
    `x64\libZipSharpNative.dll`.
@github-actions github-actions bot locked and limited conversation to collaborators Feb 6, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants