From owner-freebsd-current Tue Dec 23 15:01:26 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id PAA18040 for current-outgoing; Tue, 23 Dec 1997 15:01:26 -0800 (PST) (envelope-from owner-freebsd-current) Received: from hub.org (hub.org [209.47.148.200]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id OAA17519 for ; Tue, 23 Dec 1997 14:53:19 -0800 (PST) (envelope-from scrappy@hub.org) Received: from localhost (scrappy@localhost) by hub.org (8.8.5/8.7.5) with SMTP id RAA29547 for ; Tue, 23 Dec 1997 17:53:28 -0500 (EST) Date: Tue, 23 Dec 1997 17:53:27 -0500 (EST) From: The Hermit Hacker To: freebsd-current@freebsd.org Subject: Wine Emulator Patch... Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-current@freebsd.org X-Loop: FreeBSD.org Precedence: bulk Hi... I've been following the Wine project relatively closely, and the recent distribution threw in include files that we don't appear to have, namely wctype.h. Stefan (the maintainer) "patched" it so that it gets around this deficiency (as did I when I built it onto my computer), but I got into a discussion with the developers about this in the newsgroup, and have been informed that this is, in fact, wrong :( My argument was weak to start off with, in that I didnt' believe that anything other then Linux had this, and that putting wctype.h as part of the distribution made it more Linux-only...except that other OSs (Solaris, AIX, etc) do have a wctype.h file, so why are we missing it? The response I got from one of my postings is as follows, and I'm curious as to whether this is something up and coming for FreeBSD, or if anyone even cares? :( ========= Originator: johns@news.chiark.greenend.org.uk ([127.0.0.1]) In article <67ocd1$dn0$1@hub.org>, Marc G. Fournier wrote: > If you go into misc/lstr.c with vi, do a search/replace of: > > tow -> to > isw -> is > > That will get it to compile... *bletch* nonoNOno. Well, it probably will compile, but the two sets of functions are *supposed* to be different. wctype.h is the Wide Character Type definitions. ie. Unicode/DBCS support. This will be required to support the Windows lstrxxxW set of functions from TCHAR.H. >I still don't know what this wctype.h >is, nor what it belongs to, other then that using it makes Wine completely >a Linux-only thing from what I can tell :( > Not everyone runs Linux either :) FreeBSD doesn't have a >wctype.h file at all, not even in the most current source tree... Not at all. It's a standard header, and it appears that glibc has it. It's even documented under Visual C++'s "Standard C++ Library Reference" and "Run-Time Library Reference", so to say it's Linux libc specific is wrong. You just need to upgrade to a version of *your* OS's C library that supports this functionality. I can't believe it's either not there already (somewhere), or not planned for the near future. Anyway, it makes sense to use this support from the libc rather than reimplement it within Wine. As to why it's being done with wctype_t and not wchar_t (MS document wchar_t as being more portable), I guess the apparently newer wctype specification gives a richer set of functionality which makes the full set of lstrxxx functions easier to implement, as well as being The True Way Forward. (The names appear to be more consistent too, unlike the wcs* versions.) ===========