ACE 7.0.0 and TAO 3.0.0 released
The open source community has released ACE 7.0.0 and TAO 3.0.0
The open source community has released on Monday January 25th 2021 a new ACE 7.0.0 and TAO 3.0.0 release. This release is available from the usual download location at https://download.dre.vanderbilt.edu/ under the heading “Latest Micro Release” or from the github release page.
The doxygen documentation for this release is also available. In addition to the packages combined of sources and generate makefiles, this release provides source-only packages for developers who use MPC to generate their own makefiles.
Changes to ACE (detailed changes)¶
- C++11 is now a mandatory compiler feature which is required for ACE. Cleaned up part of the support for compilers that lack C++11 support
- When valgrind is enabled we don’t disable dlclose anymore, this reduces the amount of leaks reported related to dlclose. When you unload your shared libraries before the end of your program you can use
--keep-debuginfo=yesas valgrind options as alternative or you can disable dlclose yourself by adding
#define ACE_LACKS_DLCLOSEto your ace/config.h file
readdir_rwas marked as depracated in glibc and FreeBSD libc. Also removed
ACE_Dirent::read (ACE_DIRENT *, ACE_DIRENT **)which used it.
ACE_LACKS_READDIR_Rwill now always be defined.
- Modernized part of the code using clang-type, added override, use nullptr, use unique_ptr, remove redundant void, use bool, simplify boolean expressions, make use of std::atomic, use using
- New Latest_ACE7TAO3_ branches which can be used to always checkout the latest ACE7/TAO3 micro/minor release
- Android Support:
- `gnuace` no longer supports Android NDKs before r18. This means only clang is now supported when building for Android.
- Support for building with the Android NDK r19 or later directly instead of having to use a generated standalone toolchain. See
ACE-INSTALL.htmlfor details. Using a standalone toolchain is still supported.
- Made it easier to use `gnuace`-built libraries in as imported libraries in CMake-based Android Studio native projects.
- Removed support for old
ANDROID_ARCHmake variable. Replaced
android_abi, but kept the former as an alias of the later for compatibility. Also will no longer default to 32-bit ARM, so
ANDROID_ABImust be defined.
- As recommend by Google, building with neon support is now the default when
armeabi-v7a. If support for these processors without NEON extensions is needed, put
androind_neon := 0in
- As recommend by Google, `gnuace` will start using LLD, the LLVM linker, instead of the default GNU linkers. If the NDK being used doesn’t default to LLD and you want to use the GNU linkers, put
androind_set_lld := 0in
- Removed support for the Alpha CPU
Changes to TAO (detailed changes)¶
- C++11 is now a mandatory compiler feature which is required for TAO
- Fixed some CORBA spec mismatches for the CORBA server portable interceptors
- Add portspan support to DIOP