Hi, At 25 Jul 2005 11:27:32 +0200 Andy Polyakov wrote: > I've been browsing through MSDN and didn't quite figured out where > _WIN32_WCE and platform-specific pre-processor macros get > assigned/defined. Most notably I used to believe that they're pre- > defined by compiler driver itself, but [this time?] I failed to find an > explicit reference confirming that this is actually case. I found > reference that at least _WIN32_WCE is defined through project > preferences as -D_WIN32_WCE=$(CEVersion). Now, VC-32.pl passes down > $(WCETARGETDEFS), but does it actually cover _WIN32_WCE? Can you double- > check this? Or better yet, can you post how WCETARGETDEFS is [normally] > expanded?
Compiler doesn't define any _WIN32_WCE, UNDER_CE and so on. So you need to specify explicitly with -D options. Unfortunatelly wcecompat has a bug that it defines _WIN32_CE instead of _WIN32_WCE. For example, for Pocket PC (on WCE300) ARM, WCETARGETDEFS is expanded to -DWCEPLATFORM=MS_POCKET_PC_2000 -DARM -D_ARM_ -DUNDER_CE=300 -D_WIN32_CE=300 -DUNICODE -D_UNICODE I think we need to fix this problem before everything else. The simplest way to fix this problem is to add -D_WIN32_WCE=$(WCEVERSION) after $(WCETARGETDEFS) in makefiles. > Well, the way I feel is that "currently supported platforms" needs > definition first:-) And once again [as already mentioned in above > mentioned thread] I still fail to see why PPC2003 needs special > treatment. I'd rather classify them by _WIN32_WCE value or something > similar. In original wcecompat, there are five platforms defined: MS HPC, MS HPC Pro, ms palm size pc, ms pocket pc and Pocket PC 2002. I think "ms pocket pc" is a good starting point. Because this is the oldest platform which was built on Windows CE 3.0. Before Windows CE 3.0, supports for C runtime library are poorer. In addition, a library built for "ms pocket pc" can be used on newer Pocket PC platforms. Actually, I can build OpenSSL for "MS HPC Pro" platform using some patches against wcecompat. But before we start investigating about lacks of C runtime library supports, how about making it compile for "ms pocket pc" platform? About PPC2003 issue, sometimes it needs platform specific treatment, because APIs are defined for 'Platform' but for 'Version of Windows CE'. But from my experience, these cases are rare and mostly involved in shell APIs or something which may not be used by OpenSSL. I beleive we can classify by _WIN32_WCE (and possibly _WIN32_WCE_PSPC) in most cases. Regards. -- Satoshi Nakamura <[EMAIL PROTECTED]> ______________________________________________________________________ OpenSSL Project http://www.openssl.org Development Mailing List openssl-dev@openssl.org Automated List Manager [EMAIL PROTECTED]