Subject: Re: compiling Tk800.023
From: "Gerrit P. Haase" <[email-masked]>
To: "Kirschner, Paul E. UTRC" <[email-masked]>, "'cygwin'" <[email-masked]>
Date: Thu, 30 Aug 2001 11:46:32 +0200

> Kirschner, Paul E.        UTR schrieb am 2001-08-29 15:37:

>Has anyone compiled Tk800.023? Tk800.022 worked OK for me with the two
>patches mentioned in this list from
>http://sources.redhat.com/ml/cygwin/2001-04/msg01087.html
>
>I want to use Tk with win32 natively (without X). I added the 022 patch to
>fix the win32 stuff from
>http://sources.redhat.com/ml/cygwin/2000-08/msg01201.html.

Eric patched the new Tk800.023 already,
is attached.

Gerrit

-- 
=^..^=

diff -ur Tk800.023.orig/Makefile.PL Tk800.023/Makefile.PL
--- Tk800.023.orig/Makefile.PL	Sat Dec 30 08:12:38 2000
+++ Tk800.023/Makefile.PL	Sun Jun 10 22:38:44 2001
@@ -154,7 +154,7 @@
 }
 
 sub MY::postamble {
-    '
+ my $str = '
 
 html : subdirs manifypods
 	@cd pod && $(MAKE) html $(PASTHRU)
@@ -184,6 +184,8 @@
 	$(MAKE) manifest
 
 ';
+ $str =~ s/DEFINE=.*// if($^O eq 'cygwin');
+ $str;
 }

diff -ur Tk800.023.orig/README.cygwin Tk800.023/README.cygwin
--- Tk800.023.orig/README.cygwin	Tue May 15 07:53:38 2001
+++ Tk800.023/README.cygwin	Sun Jun 10 22:38:44 2001
@@ -90,7 +90,7 @@
       (sometimes $^O eq 'MSWin32' is used instead of $Tk::platform
        eq 'MSWin32' assuming they are equivalent and vice versa)
     + #define distinctions
-        _WIN32                defined by gcc, if X11 need to undef
+        _WIN32                win_arch MSWin32
         __WIN32__             win_arch MSWin32, also defined in pTk/Lang.h
         WIN32                 from #include <windows.h>
                               when precedes #include "perl.h" then need
@@ -107,7 +107,7 @@
     README.cygwin MANIFEST
     * documentation
 
-    Makefile.PL Tk/MMutil.pm pTk/Makefile.PL
+    Makefile.PL Tk/MMutil.pm pTk/Makefile.PL myConfig
     * make stuff
 
     pTk/mTk/win/tkWinX.c
@@ -149,6 +149,6 @@
     + Fix gcc warnings, mostly in pTk win32 flavor?
     + Test with cygwin-xfree X Server?
 
-Thu Aug 31 12:54:09 BST 2000
+Sun Jun 10 21:34:30 PST 2001
 Eric Fifer
[email-masked]
[email-masked]
diff -ur Tk800.023.orig/Tk/MMutil.pm Tk800.023/Tk/MMutil.pm
--- Tk800.023.orig/Tk/MMutil.pm	Sat Dec 30 08:12:38 2000
+++ Tk800.023/Tk/MMutil.pm	Sun Jun 10 22:38:44 2001
@@ -227,13 +227,10 @@
      push(@def,qw(-D__CYGWIN__));
      if ($win_arch eq 'MSWin32')
       {
-       push(@def,qw(-D__WIN32__)) unless $self->{'DEFINE'} =~ /-D__WIN32__/;
+       push(@def,qw(-D__WIN32__ -D_WIN32))
+			       unless $self->{'DEFINE'} =~ /-D__WIN32__/;
        push(@def,qw(-DWIN32)) if $self->{'NAME'} eq 'Tk::pTk';
       }
-     elsif ($win_arch eq 'x')
-      {
-       push(@def,qw(-U_WIN32));
-      }
     }
    foreach (@inc)
     {
@@ -508,15 +505,11 @@
      push(@opt,'LD' => 'gcc -shared');
      if ($win_arch eq 'MSWin32')
       {
-       my $extra = "-lcomdlg32 -lgdi32";
+       my $extra = "-L/lib/w32api -lcomdlg32 -lgdi32";
        my $libs = $att{'LIBS'}->[0];
        $att{'LIBS'}->[0] = "$extra $libs";
-       $att{'DEFINE'} .= ' -D__WIN32__';
+       $att{'DEFINE'} .= ' -D__WIN32__ -D_WIN32';
        $att{'DEFINE'} .= ' -DWIN32' if($att{'NAME'} eq 'Tk::pTk');
-      }
-     elsif ($win_arch eq 'x')
-      {
-       $att{'DEFINE'} .= ' -U_WIN32';
       }
     }
    if (delete $att{'ptk_include'})
diff -ur Tk800.023.orig/myConfig Tk800.023/myConfig
--- Tk800.023.orig/myConfig	Sat Dec 30 08:12:38 2000
+++ Tk800.023/myConfig	Sun Jun 10 22:38:44 2001
@@ -340,7 +340,7 @@
   $define .= " -D__PM__";
   $inc = "-I../pTk/mTk/xlib -I../../pTk/mTk/xlib -IpTk/mTk/xlib -ImTk/os2_rc";
   $xlib = "";                          # No library is needed
-} elsif ($IsWin32) {
+} elsif ($IsWin32 or $^O eq 'cygwin') {
   $inc = '-I$(TKDIR)/pTk/mTk/xlib';
 }
 
diff -ur Tk800.023.orig/pTk/Xlib.excwin Tk800.023/pTk/Xlib.excwin
--- Tk800.023.orig/pTk/Xlib.excwin	Sat Dec 30 08:12:38 2000
+++ Tk800.023/pTk/Xlib.excwin	Sun Jun 10 23:13:46 2001
@@ -37,4 +37,5 @@
 XReadBitmapFile
 XOpenDisplay
 XLoadQueryFont
-XCreateWindow
\ No newline at end of file
+XCreateWindow
+XRectInRegion

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/