Commit 7c1e0a2abe12aa8b2312960a39222bff61daedca
1 parent
8f389f14
Test for wmain/unicode
Showing
2 changed files
with
43 additions
and
0 deletions
autoconf.mk.in
| ... | ... | @@ -41,6 +41,8 @@ QPDF_SKIP_TEST_COMPARE_IMAGES=@QPDF_SKIP_TEST_COMPARE_IMAGES@ |
| 41 | 41 | BUILDRULES=@BUILDRULES@ |
| 42 | 42 | HAVE_LD_VERSION_SCRIPT=@HAVE_LD_VERSION_SCRIPT@ |
| 43 | 43 | WINDOWS_WORDSIZE=@WINDOWS_WORDSIZE@ |
| 44 | +WINDOWS_WMAIN_COMPILE=@WINDOWS_WMAIN_COMPILE@ | |
| 45 | +WINDOWS_WMAIN_LINK=@WINDOWS_WMAIN_LINK@ | |
| 44 | 46 | SHOW_FAILED_TEST_OUTPUT=@SHOW_FAILED_TEST_OUTPUT@ |
| 45 | 47 | # Allow environment variable to override |
| 46 | 48 | QPDF_LARGE_FILE_TEST_PATH?=@QPDF_LARGE_FILE_TEST_PATH@ | ... | ... |
configure.ac
| ... | ... | @@ -145,6 +145,47 @@ if test "$BUILD_INTERNAL_LIBS" = "0"; then |
| 145 | 145 | AC_SEARCH_LIBS(jpeg_destroy,jpeg,,[MISSING_JPEG=1; MISSING_ANY=1]) |
| 146 | 146 | fi |
| 147 | 147 | |
| 148 | +qpdf_USE_WMAIN=0 | |
| 149 | +AC_LANG_PUSH([C++]) | |
| 150 | +AC_SUBST(WINDOWS_WMAIN_COMPILE) | |
| 151 | +AC_SUBST(WINDOWS_WMAIN_LINK) | |
| 152 | +for i in 0 1; do | |
| 153 | + if test "$qpdf_USE_WMAIN" = "0"; then | |
| 154 | + oLDFLAGS="$LDFLAGS" | |
| 155 | + if test "$i" = "1"; then | |
| 156 | + nLDFLAGS="-municode" | |
| 157 | + LDFLAGS="$LDFLAGS $nLDFLAGS" | |
| 158 | + msg="checking for wmain with $nLDFLAGS" | |
| 159 | + else | |
| 160 | + nLDFLAGS= | |
| 161 | + msg="checking for wmain" | |
| 162 | + fi | |
| 163 | + AC_MSG_CHECKING($msg) | |
| 164 | + AC_LINK_IFELSE([AC_LANG_SOURCE( | |
| 165 | + [[#include <windows.h> | |
| 166 | + #include <string.h> | |
| 167 | + #include <stdio.h> | |
| 168 | + extern "C" | |
| 169 | + int wmain(int argc, wchar_t* argv[]) | |
| 170 | + { | |
| 171 | + size_t x = wcslen(argv[0]); | |
| 172 | + return 0; | |
| 173 | + } | |
| 174 | + ]])], | |
| 175 | + [qpdf_USE_WMAIN=1], | |
| 176 | + [qpdf_USE_WMAIN=0]) | |
| 177 | + LDFLAGS="$oLDFLAGS" | |
| 178 | + if test "$qpdf_USE_WMAIN" = "1"; then | |
| 179 | + AC_MSG_RESULT(yes) | |
| 180 | + WINDOWS_WMAIN_COMPILE="-DWINDOWS_WMAIN $nLDFLAGS" | |
| 181 | + WINDOWS_WMAIN_LINK="$nLDFLAGS" | |
| 182 | + else | |
| 183 | + AC_MSG_RESULT(no) | |
| 184 | + fi | |
| 185 | + fi | |
| 186 | +done | |
| 187 | +AC_LANG_POP | |
| 188 | + | |
| 148 | 189 | if test "x$qpdf_OS_SECURE_RANDOM" = "x1"; then |
| 149 | 190 | OLIBS=$LIBS |
| 150 | 191 | LIBS="$LIBS Advapi32.lib" | ... | ... |