This is an automated email from the ASF dual-hosted git repository.

davydm pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/logging-log4net.git


The following commit(s) were added to refs/heads/master by this push:
     new fe6bf055 :memo: update build docs
fe6bf055 is described below

commit fe6bf0559c0fb06545a28a5ea974b9fd48786894
Author: Davyd McColl <[email protected]>
AuthorDate: Mon Mar 4 11:27:38 2024 +0200

    :memo: update build docs
---
 doc/BUILDING.md            | 33 +++++++++++++++++++++++++++++++--
 src/log4net/log4net.csproj |  9 +--------
 2 files changed, 32 insertions(+), 10 deletions(-)

diff --git a/doc/BUILDING.md b/doc/BUILDING.md
index 597aafaf..87d04916 100644
--- a/doc/BUILDING.md
+++ b/doc/BUILDING.md
@@ -1,11 +1,36 @@
 ## Building log4net
 
 Log4net provides support for a wide array of targets, including
-- older .net 2 and 3.5 (including client profiles)
+- older .net 2 and 3.5 (including client profile for net-40)
 - more modern net40/net45
 - netstandard1.3/2.0
 
 As such, it does require a relatively full .net environment on Windows to 
build.
+I have recently found a fairly freshly-installed win11 machine to work 
adequately,
+after adding the "windows feature" for ".NET Framework 3.5 (includes .NET 2.0 
and 3.0)"
+
+TL;DR (Windows):
+- install Visual Studio Build Tools (at least VS2019)
+- install nodejs (at least v16)
+- install dotnet (v7+) and the .NET SDK (current latest)
+- install dotnet 2, 3, 3.5 via "add windows features"
+- in the project folder:
+  - `npm i`
+  - `npm run build`
+
+TL;DR (!Windows):
+- install the dotnet SDK - v7 or better (at time of writing, v8 is current but
+  I've had some issues elsewhere, so I'm waiting a bit before recommending it
+  everywhere
+- install Mono (you're going to need it to target certain versions of .NET)
+- install nodejs 16+
+  - in the project folder:
+  - `npm i`
+  - `export DOTNET_CORE=1 npm run build`
+    - we force using `dotnet` on non-windows targets for now. At some point,
+      this should become automatic
+
+## The full story
 
 Options:
 - build locally. Suggested environment:
@@ -35,6 +60,10 @@ Options:
             - `npm run build`
             - optionally `npm test` to run all tests
             - optionally `npm run release` to generate release artifacts
+- build locally (CLI edition)
+  - install nodejs (at least v16)
+  - `npm i`
+  - `npm run build`
 - build via docker for windows, using the `build-with-docker-for-windows.bat` 
script
 - build via the vs2019 Windows AppVeyer image. There is an appveyer.yml file
     included which (should) build if you set up AppVeyer to track
@@ -54,4 +83,4 @@ The site will be generated in `target/site`, and can be 
viewed locally. Updates
 be pushed to the `asf-staging` branch of 
[https://github.com/apache/logging-log4net-site](https://github.com/apache/logging-log4net-site])
 
 Once the site has been pushed to the `asf-staging` branch, it can be viewed at
-[http://logging.staged.apache.org/log4net](http://logging.staged.apache.org/log4net)
\ No newline at end of file
+[http://logging.staged.apache.org/log4net](http://logging.staged.apache.org/log4net)
diff --git a/src/log4net/log4net.csproj b/src/log4net/log4net.csproj
index be9355b4..2c9e4a4e 100644
--- a/src/log4net/log4net.csproj
+++ b/src/log4net/log4net.csproj
@@ -72,13 +72,6 @@
     <RegisterForComInterop>false</RegisterForComInterop>
     <RemoveIntegerChecks>false</RemoveIntegerChecks>
   </PropertyGroup>
-  <PropertyGroup Condition="'$(TargetFramework)'=='net35-client'">
-    <TargetFrameworkIdentifier>.NETFramework</TargetFrameworkIdentifier>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <TargetFrameworkProfile>Client</TargetFrameworkProfile>
-    <OutDir>..\..\build\$(Configuration)\net35-client</OutDir>
-    
<DefineConstants>$(DefineConstants);NET_2_0;NET_3_5;CLIENT_PROFILE</DefineConstants>
-  </PropertyGroup>
   <PropertyGroup Condition="'$(TargetFramework)'=='net40-client'">
     <TargetFrameworkIdentifier>.NETFramework</TargetFrameworkIdentifier>
     <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
@@ -212,4 +205,4 @@
       <ReferenceCopyLocalPaths 
Include="@(ReferenceCopyLocalPaths->'%(RootDir)%(Directory)%(Filename).xml')" 
Condition="'%(ReferenceCopyLocalPaths.NuGetPackageId)' != '' and 
Exists('%(RootDir)%(Directory)%(Filename).xml')"/>
     </ItemGroup>
   </Target>
-</Project>
\ No newline at end of file
+</Project>

Reply via email to