Modify ICU4C and ICU4J test readers to handle all tests
Add `ignoreJava` and `ignoreCpp` properties to tests where needed
Includes parser bug fixes:
ICU4J: require a complex-body after declarations
ICU4J: Correctly parse the complex body after an unsupported statement
ICU4J: Handle date params in tests and remove default params for tests
ICU4J: Handle decimal params in tests
ICU4J: Require whitespace before variable/literal in reserved annotation
ICU4J: Require whitespace between options
ICU4J: Require a variable-expression in an .input declaration
ICU4J: don't require space between last key and pattern in variant
ICU4J: don't require space between selectors
ICU4J: allow whitespace after '=' in option
ICU4J: parse escape sequences in quoted literals according to grammar
ICU4J: allow whitespace within markup after attributes list
An attempt to build ICU on old macOS with PowerPC leads to an issue:
```
./out/tmp/icudt72b_dat.S:7:Unknown pseudo-op: .balign
./out/tmp/icudt72b_dat.S:7:Rest of line ignored. 1st junk character valued 49 (1).
```
Why? Because `as` is too old.
Anyway, switch back to `.p2align` fix a build and allows to pass all tests.
See: https://trac.macports.org/ticket/66258
Signed-off-by: Kirill A. Korinsky <kirill@korins.ky>
since the move of the DLL to bin/ the library names in .pc files is
wrong. With ICU 65.1, icu-uc.pc contains
Libs: -L${libdir} -licuuc65 -licudt65
the version number should not appear. Indeed, the linker looks for the
libraries in $prefix/lib in the following order (see [1]):
libxxx.dll.a
xxx.dll.a
libxxx.a
cygxxx.dll
libxxx.dll
xxx.dll
As the is only the import library with no versioning (which is normal),
the is a link error when using ICU pc files.
[1] https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/4/html/Using_ld_the_GNU_Linker/win32.html
This change builds on Vincent Torri's changes.
This installs the ICU DLL files in $prefix/bin instead of $prefix/lib.
Note: In order to disable this change in behavior you can edit
the "mh-mingw*" file(s). If you set the variable MINGW_MOVEDLLSTOBINDIR
to NO instead of YES, then it will retain the previous behavior of
installing the DLLs into the bin folder.
The Azure DevOps VM images that are used in the CI builds recently
updated the version of MSYS that is installed, which is causing the
MSYS builds to fail. It seems that this new version has issues with
using the shell cmd method in the makefiles to obtain the current path.
However, we can avoid this entirely by using the cygpath utility, which
also avoids the overhead of launching a new cmd instance just to get
the path. Unfortunately, it seems that older versions of MSYS don't
have this utility program included by default, though versions of
MSYS 2 and up do have it included by default.
We can continue using the old approach for the older versions and use
the cygpath approach for new versions.
- in the rpath case, we do NOT want a trailing space in LD_SONAME
regression was introduced in ICU-20526 with
83a0542b5b (master)
b76cb6517e (in maint-64)
- added PKGDATA_TRAILING_SPACE to all of the pkgdataMakefile.in file.
- NOTE: Users who create their own pkgdata.inc / icupkg.inc files may need
to recreate this PKGDATA_TRAILING_SPACE behavior.
- used the above variable, normally undefined, in mh-* files that need a trailing space
- Also, fixed use of system() in pkgdata.cpp per ICU-20538
This was causing pkgdata to return a zero status even on clang
failure, masking this issue.
- use git instead of svn for versioning
- update generated file names to match official downloads
Example filenames:
- icu4c-63_1-c5749aaf94-src.tgz (includes git hash or tag)
- icu4c-63_1-src.tgz (hard link to above)
- icu4c-src.tgz (symlink)
- icu4c-63_1-c5749aaf94-src.zip (includes git hash or tag)
- icu4c-63_1-src.zip (hard link to above)
- icu4c-src.zip (symlink)
- icu4c-63_1-c5749aaf94-data.zip (includes git hash or tag)
- icu4c-63_1-data.zip (hard link to above)
- icu4c-data.zip (symlink)
- icu4c-63_1-c5749aaf94-docs.zip (includes git hash or tag)
- icu4c-63_1-docs.zip (hard link to above)
- icu4c-docs.zip (symlink)
For builds using Cygwin and MSVC with Debug configuration, '.dll' and '.lib' binaries has 'd' suffix.
Doing the same for builds using MinGW and MinGW64, based on the code from MSVC toolchain.
Task-number: ICU-13138
* work around some c++11 issues
* fix some literals in rbbitst.cpp
* update escaper
* add mh-aix-va for using escaping
* work around nullptr and uchar16 issues
* revert bad icuinfo.cpp checkin
this commit still fails.
X-SVN-Rev: 39812