diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index efb385cda..5e86b47de 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -14,8 +14,10 @@ concurrency:
cancel-in-progress: true
env:
- ICE_HOME: ${{ github.workspace }}/ice
- PLATFORM: x64
+ ICE_HOME: ${{ github.workspace }}/ice # Makefile
+ IceHome: ${{ github.workspace }}/ice # MSBuild
+ Platform: x64 # For Msbuild
+ Configuration: Release # For Msbuild
jobs:
ci:
@@ -23,11 +25,7 @@ jobs:
strategy:
fail-fast: false
matrix:
- os: [
- ubuntu-22.04,
- macos-14,
- # windows-2022
- ]
+ os: [ubuntu-22.04, macos-14, windows-2022]
runs-on: ${{ matrix.os }}
steps:
@@ -57,4 +55,4 @@ jobs:
timeout-minutes: 30
with:
working_directory: ice-demos/cpp
- msbuild_project: \"C++ demos.sln\"
+ msbuild_project: msbuild/ice.proj
diff --git a/cpp/Ice/async/README.md b/cpp/Ice/async/README.md
index acf827122..6a192a83f 100644
--- a/cpp/Ice/async/README.md
+++ b/cpp/Ice/async/README.md
@@ -20,5 +20,5 @@ process the request. While a long request is processing, short
requests are still able to be processed and more long requests can be
queued for processing by the worker thread.
-[1]: https://doc.zeroc.com/ice/3.7/language-mappings/c++11-mapping/client-side-slice-to-c++11-mapping/asynchronous-method-invocation-ami-in-c++11
-[2]: https://doc.zeroc.com/ice/3.7/language-mappings/c++11-mapping/server-side-slice-to-c++11-mapping/asynchronous-method-dispatch-amd-in-c++11
+[1]: https://doc.zeroc.com/ice/3.8/language-mappings/c++-mapping/client-side-slice-to-c++-mapping/asynchronous-method-invocation-ami-in-c++
+[2]: https://doc.zeroc.com/ice/3.8/language-mappings/c++-mapping/server-side-slice-to-c++-mapping/asynchronous-method-dispatch-amd-in-c++
diff --git a/cpp/Ice/asyncInvocation/README.md b/cpp/Ice/asyncInvocation/README.md
index 3bd32708f..d1ca9bd29 100644
--- a/cpp/Ice/asyncInvocation/README.md
+++ b/cpp/Ice/asyncInvocation/README.md
@@ -13,4 +13,4 @@ In a second window, start the client:
```
client
```
-[1]: https://doc.zeroc.com/ice/3.7/language-mappings/c++11-mapping/client-side-slice-to-c++11-mapping/asynchronous-method-invocation-ami-in-c++11
+[1]: https://doc.zeroc.com/ice/3.8/language-mappings/c++-mapping/client-side-slice-to-c++-mapping/asynchronous-method-invocation-ami-in-c++
diff --git a/cpp/Ice/plugin/msbuild/hello/hello.vcxproj b/cpp/Ice/plugin/msbuild/hello/hello.vcxproj
index 5f1981734..3aa6bf876 100644
--- a/cpp/Ice/plugin/msbuild/hello/hello.vcxproj
+++ b/cpp/Ice/plugin/msbuild/hello/hello.vcxproj
@@ -79,10 +79,10 @@
..\..\
$(Platform)\$(Configuration)\
false
- helloplugin37++11d
- helloplugin37++11d
- helloplugin37++11
- helloplugin37++11
+ helloplugin38d
+ helloplugin38d
+ helloplugin38
+ helloplugin38
@@ -107,7 +107,7 @@
setargv.obj;%(AdditionalDependencies)
- helloplugin37d.lib
+ helloplugin38d.lib
MachineX86
@@ -134,7 +134,7 @@
setargv.obj;%(AdditionalDependencies)
- helloplugin37d.lib
+ helloplugin38d.lib
MachineX64
@@ -163,7 +163,7 @@
setargv.obj;%(AdditionalDependencies)
- helloplugin37.lib
+ helloplugin38.lib
MachineX86
@@ -192,7 +192,7 @@
setargv.obj;%(AdditionalDependencies)
- helloplugin37.lib
+ helloplugin38.lib
MachineX64
diff --git a/cpp/Ice/plugin/msbuild/logger/logger.vcxproj b/cpp/Ice/plugin/msbuild/logger/logger.vcxproj
index 540b5926e..b7d42d097 100644
--- a/cpp/Ice/plugin/msbuild/logger/logger.vcxproj
+++ b/cpp/Ice/plugin/msbuild/logger/logger.vcxproj
@@ -79,10 +79,10 @@
..\..\
$(Platform)\$(Configuration)\
false
- loggerplugin37++11d
- loggerplugin37++11d
- loggerplugin37++11
- loggerplugin37++11
+ loggerplugin38d
+ loggerplugin38d
+ loggerplugin38
+ loggerplugin38
@@ -107,7 +107,7 @@
setargv.obj;%(AdditionalDependencies)
- loggerplugin37d.lib
+ loggerplugin38d.lib
MachineX86
@@ -134,7 +134,7 @@
setargv.obj;%(AdditionalDependencies)
- loggerplugin37d.lib
+ loggerplugin38d.lib
MachineX64
@@ -163,7 +163,7 @@
setargv.obj;%(AdditionalDependencies)
- loggerplugin37.lib
+ loggerplugin38.lib
MachineX86
@@ -192,7 +192,7 @@
setargv.obj;%(AdditionalDependencies)
- loggerplugin37.lib
+ loggerplugin38.lib
MachineX64
diff --git a/cpp/IceBox/hello/msbuild/server/server.vcxproj b/cpp/IceBox/hello/msbuild/server/server.vcxproj
index 7a44f5f78..3a8b4a8ae 100644
--- a/cpp/IceBox/hello/msbuild/server/server.vcxproj
+++ b/cpp/IceBox/hello/msbuild/server/server.vcxproj
@@ -79,10 +79,10 @@
..\..\
$(Platform)\$(Configuration)\
false
- helloservice++11d
- helloservice++11d
- helloservice++11
- helloservice++11
+ helloserviced
+ helloserviced
+ helloservice
+ helloservice
diff --git a/cpp/IceBox/hello/msbuild/server/server.vcxproj.user b/cpp/IceBox/hello/msbuild/server/server.vcxproj.user
index 9c0a99d95..6005e3306 100644
--- a/cpp/IceBox/hello/msbuild/server/server.vcxproj.user
+++ b/cpp/IceBox/hello/msbuild/server/server.vcxproj.user
@@ -1,13 +1,14 @@
-
+
- $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox++11.exe
+ $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox.exe
--Ice.Config=config.icebox
..\..
WindowsLocalDebugger
- $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox++11.exe
+ $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox.exe
--Ice.Config=config.icebox
..\..
WindowsLocalDebugger
@@ -16,12 +17,12 @@
..\..
WindowsLocalDebugger
--Ice.Config=config.icebox
- $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox++11.exe
+ $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox.exe
..\..
WindowsLocalDebugger
--Ice.Config=config.icebox
- $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox++11.exe
+ $(IceHome)\build\native\bin\$(Platform)\$(Configuration)\icebox.exe
-
\ No newline at end of file
+
diff --git a/cpp/IceGrid/icebox/README.md b/cpp/IceGrid/icebox/README.md
index 59763f4c4..57dfe64db 100644
--- a/cpp/IceGrid/icebox/README.md
+++ b/cpp/IceGrid/icebox/README.md
@@ -24,7 +24,7 @@ icegridadmin --Ice.Config=config.grid -e "application add application.xml"
```
If you are using 32-bit binaries on a Linux 64-bit host, first edit
-`application.xml` and replace `exe="icebox++11"` by `exe="icebox32++11"`.
+`application.xml` and replace `exe="icebox"` by `exe="icebox32"`.
Using the IceGrid GUI
---------------------
diff --git a/cpp/IceGrid/icebox/application.xml b/cpp/IceGrid/icebox/application.xml
index 9380d0dee..900bbe793 100644
--- a/cpp/IceGrid/icebox/application.xml
+++ b/cpp/IceGrid/icebox/application.xml
@@ -51,7 +51,7 @@
-
+
A sample IceBox server
diff --git a/cpp/IceGrid/icebox/msbuild/server/server.vcxproj b/cpp/IceGrid/icebox/msbuild/server/server.vcxproj
index 47dfde555..18168ef5a 100644
--- a/cpp/IceGrid/icebox/msbuild/server/server.vcxproj
+++ b/cpp/IceGrid/icebox/msbuild/server/server.vcxproj
@@ -79,10 +79,10 @@
..\..\
$(Platform)\$(Configuration)\
false
- helloservice++11d
- helloservice++11d
- helloservice++11
- helloservice++11
+ helloserviced
+ helloserviced
+ helloservice
+ helloservice
diff --git a/cpp/Makefile b/cpp/Makefile
index f3512358e..5e3fa9a36 100644
--- a/cpp/Makefile
+++ b/cpp/Makefile
@@ -8,7 +8,6 @@ lang_srcdir := $(top_srcdir)/cpp
include $(top_srcdir)/make/Make.rules
include $(lang_srcdir)/make/Make.rules
-exclude := Ice/qt
demos := $(filter-out $(exclude),$(call demos-without-project-makefile,Client.cpp))
include $(shell find $(lang_srcdir) -name Makefile.mk)
$(foreach t,$(demos),$(eval $(call create-cpp-demo-project,$(t))))
diff --git a/cpp/README.md b/cpp/README.md
index b2e2073d6..a8c42663c 100644
--- a/cpp/README.md
+++ b/cpp/README.md
@@ -6,7 +6,8 @@
## Overview
-This directory contains C++ sample programs for various Ice components. These examples are provided to get you started on
+This directory contains C++ sample programs for various Ice components. These examples
+are provided to get you started on
using a particular Ice feature or coding technique.
Most of the subdirectories here correspond directly to Ice components, such as
@@ -108,7 +109,7 @@ select `Build`.
- Open a Visual Studio command prompt:
```shell
- cd ice-demos\cpp11
+ cd ice-demos\cpp
MSBuild /p:IceHome= /p:Configuration= msbuild\ice.proj
```
@@ -118,15 +119,15 @@ select `Build`.
- Open a Visual Studio command prompt:
```shell
- cd ice-demos\cpp11
- MSBuild /p:IceHome= /p:Configuration= /t:InstallLocalPackages msbuild\ice.proj
+ cd ice-demos\cpp
+ MSBuild /p:IceHome= /p:Configuration= msbuild\ice.proj
```
The command above creates NuGet packages for the source tree designated by
`Ice dist path` (and first builds this source tree if needed), and then installs these
- NuGet packages in the `ice-demos\cpp11\packages` folder.
+ NuGet packages in the `ice-demos\cpp\packages` folder.
- - Start Visual Studio, open the `C++11 demos.sln` solution, and select your target
+ - Start Visual Studio, open the `C++ demos.sln` solution, and select your target
configuration (Debug or Release) and platform (Win32 or x64). Right click on the
desired demo in the Solution Explorer window and select `Build`.
@@ -138,7 +139,7 @@ If you are building Debug, add both the Debug and Release `bin` directories with
command similar to:
```shell
-set PATH=%USERPROFILE%\ice-demos\cpp11\packages\zeroc.ice.v140.3.7.10\build\native\bin\x64\Debug;%USERPROFILE%\ice-demos\cpp11\packages\zeroc.ice.v140.3.7.10\build\native\bin\x64\Release;%PATH%
+set PATH=%USERPROFILE%\ice-demos\cpp\packages\zeroc.ice.v148.3.8.0-alpha0\build\native\bin\x64\Debug;%USERPROFILE%\ice-demos\cpp\packages\zeroc.ice.v143.3.8.0-alpha0\build\native\bin\x64\Release;%PATH%
```
This is required because the Debug `bin` directories provide only a subset of all
@@ -148,10 +149,10 @@ If you are building Release, you should add only the Release `bin` directory to
your PATH with a command similar to:
```shell
-set PATH=%USERPROFILE%\ice-demos\cpp11\packages\zeroc.ice.v140.3.7.10\build\native\bin\x64\Release;%PATH%
+set PATH=%USERPROFILE%\ice-demos\cpp\packages\zeroc.ice.v143.3.8.0-alpha0\build\native\bin\x64\Release;%PATH%
```
Then refer to the README.md file in each demo directory for usage instructions.
-[1]: https://doc.zeroc.com/ice/3.7/introduction
+[1]: https://doc.zeroc.com/ice/3.8/introduction
[2]: https://doc.zeroc.com/technical-articles/general-topics/chat-demo
diff --git a/make/Make.rules b/make/Make.rules
index f45afe100..76480db35 100644
--- a/make/Make.rules
+++ b/make/Make.rules
@@ -13,7 +13,7 @@
# The default for the demos is to build with debug information and no
# optimization.
#
-#OPTIMIZE = yes
+OPTIMIZE ?= yes
#
# Define PLATFORMS to the list of platforms to build. This defaults