This is the mail archive of the cygwin-xfree@cygwin.com mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

RE: [ANNOUNCEMENT] Cygwin/XFree86 DocBook-based FAQ Draft 4




> -----Original Message-----
> From: Robert Collins [mailto:robert.collins@itdomain.com.au] 
> Sent: Thursday, May 24, 2001 8:48 PM
> To: Suhaib M. Siddiqi; cygwin-xfree@cygwin.com
> Subject: RE: [ANNOUNCEMENT] Cygwin/XFree86 DocBook-based FAQ Draft 4
> 
> 
> Yes. All current content will be included in any new FAQ.
> 
> I'm still not done with the authoring system - its 
> look-and-feel - must integrate into current website. (None of 
> this ugly blacknwhite faq stuff).
> 
> At this point in time, I'm not worried about actual content. 
> I'm only worried about generating output that will be acceptable.
> 
> I'd like everyone to forget about the draft FAQ content for 
> now. 1 Step at a time.
> 


OK.  I forgot about it :-)
Suhaib


> Rob
> 
>  
> 
> > -----Original Message-----
> > From: Suhaib M. Siddiqi [mailto:ssiddiqi@nc.rr.com]
> > Sent: Friday, May 25, 2001 10:24 AM
> > To: cygwin-xfree@cygwin.com
> > Subject: RE: [ANNOUNCEMENT] Cygwin/XFree86 DocBook-based FAQ Draft 4
> > 
> > 
> > Are we going to include the missing points from present FAQ
> > ( am giving
> > below a few important examples)?  Or is it something Rob will do?
> > 
> > 
> > 
> > 
> > Are there static versions of the X libraries?
> > NO.
> > 3.13
> > Will there be Xaw.DLL, Xt.DLL and Xmu.DLL?
> > 
> > There are no plans for them at this pont. GCC is free
> > software, and most
> > stuff written for it is also freely available. Recompile Xaw, 
> > Xt and Xmu
> > if you want. However, keep the following in mind:
> > "One of the biggest issues with X on Win32 is the moronic 
> DLL format.
> > Specifically - it is not possible to export data from a 
> Win32 DLL in a
> > form that can be used to statically initialize another global 
> > variable.
> > Data access from a DLL requires at least one pointer 
> indirection, and
> > hence executable code. This is why X11R6 doesn't have DLLs for
> > Xt/Xmu/Xaw (and Motif) on Win32", quoted from 
> > XFree86-developers Mailing
> > List - David E. Wexelblat (dwex@datafocus.com) Wed, 25 Mar 
> > 1998 10:08:27
> > -0500.
> > NB: See the mailing list page and the cygwin mailing list for
> > discussions on libtool, which is facing the same issue and 
> > may generate
> > a successful workaround. If that is done then you should have a
> > relatively easy time porting Xt/Xmu/Xaw. 
> > 
> > Will the DLLs link with Watcom, Borland, MSVC, and VAC++?
> >  
> > The patched source code for Cygwin/GCC compilers is 
> available via cvs. 
> > You will need to consult Mumit Khan's URL at 
> > http://www.xraylith.wisc.edu/~khan/software/gnu-win32 and edit 
> > cygwin.cf and cygwin.rules in xc/cf directory as needed and compile
> > them yourself.
> > 
> > 3.17
> >  Are there special porting considerations?
> >  
> > Below are few basic rules I follow and are derived from 
> XFree86 source
> > code:
> > 
> > Use the Imakefile and do not try to handcraft or patch a Makefile. 
> > Things will go wrong!
> > Read about the macros ProgramTargetName() and 
> LibraryTargetName() and
> > use them in the Imakefile, rather than hacking .exe and .lib 
> > names. The
> > above will work, hacking won't.  
> > Use #ifdef cygwinArchitecture in an Imakefile to specify an CYGWIN
> > dependent part.  
> > In source or header files, exclusively use #ifdef __CYGWIN__ 
> > for CYGWIN
> > specific parts. Don't use other symbols, such as "WIN32", 
> "__WIN32__",
> > "i386", "__GNUC__", or "__32BIT__". Use only #ifdef, #else, 
> > #endif, not
> > #elif, as some other compilers don't support this.  
> > If you think there is a bug in the provided X11 include 
> files, you are
> > doing something wrong.  
> > Many Imakefiles silently assume they are running under Unix, and
> > therefore have program and library names hardcoded in. Use the
> > LibraryTargetName and ProgramTargetName macros to wrap libs and
> > programs, such as in 
> > 
> > EXTRA_LIBRARIES = ../Xpmlib/LibraryTargetName(Xpm)
> > PROGRAMS = ProgramTargetName(xterm) ProgramTargetName(resize) 
> > 
> > Don't reinvent the wheel concerning environment variables.
> > Use the ones
> > that are described in the installation file README, rather 
> than invent
> > yet another variable name for USERs, HOME directories, TMP> 
> > directories,
> > etc.  
> > Try to make your filenames comply with the 8.3 file name 
> > convention, so
> > that users may relocate them to elsewhere.  
> > The libraries are DLLs for certain reasons.  
> > Much software from Unix assumes that lines have '\n' as a line
> > delimiter. Don't change this, some code relies on this. 
> Rather rewrite
> > the code to accept \r\n as a line delimiter.  
> > Code that relies on Unix security, job control, tty/pty 
> handling, does
> > not need major rewriting because Cygwin1.dll offers this 
> > functionality.
> > 
> > If you want to contribute other software, please follow these
> > guidelines
> > for making your distribution zip file:  
> > Use Cygwin tar and gzip or bzip2 for packing, even if some 
> > foobar packer
> > gives you 1 % better compression. Don't use Windows Winzip or other
> > non-cygwin aware tools. 
> > If you use an Imakefile (which is common practice with X 
> > apps), set the
> > X11ROOT variable to another letter than the one where you 
> > have your X11
> > tree. This makes it easier for you to combine all necessary 
> > files into a
> > distribution.  
> > Use exactly the same tree structure as Cygwin/XFree86 is using don't
> > reinvent wheels and install to /usr/X11R6/bin or similar.  
> > The last section means that the directories in your archive 
> should be
> > rooted to /usr/X11R6.  
> > Put sources in a separate archive, not in the binary 
> release, and root
> > this archive at /usr/X11R6/src/PACKAGENAME, e.g.
> > /usr/X11R6/src/xfoo-0.99.  
> > The reason for all that is that there are plans for a 
> > Software Installer
> > in the future to improve the installation procedure. This should
> > integrate all contribution packages as well. Non-conforming
> > contributions will be rejected without warning.  
> > 
> > 3.23
> > 
> >  
> >  I compiled an X/MOTIF client foo.exe.  My foo.exe executes
> > but I cannot
> > use keyboard and my console dumps Xt Warnings: 
> > 
> > Warning: translation table syntax error: Unknown event type : 
> > BtnMotion
> > Warning: ... found while parsing ' <BtnMotion>:
> ManagerGadgetButtonM...
> > <SNIP> ...
> > 
> > What is wrong?
> >  
> > You need to set XKeysymDB and XErrorDB Environment.  XKeysymDB and 
> > XErrorDB files usually resides in /usr/X11R6/lib/X11 directory.
> > 
> > For example:
> > 
> > SET XKeysymDB=C:\usr\X11R6\lib\X11\XKeysymDB
> > SET XErrorDB =C:\usr\X11R6\lib\X11\XErrorDB
> > 3.24 Can I use DLLs and libraries with MSVC (Microsoft 
> Visual C++) to
> > compile my source code? 
> > 
> > No!  You cannot use Cygwin/XFree86 libraries with MSVC. You
> > need latest
> > version of Cygwin and GCC which comes with Cygwin.  However, you can
> > check out http://sources.redhat.com/win32-x11 for  MSVC.
> > 
> >  
> > 
> > 
> > 
> 


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]