This is the mail archive of the
kawa@sources.redhat.com
mailing list for the Kawa project.
Compiling kawa with cygwin
- From: "Weiqi Gao" <weiqigao at networkusa dot net>
- To: <kawa at sources dot redhat dot com>
- Date: Wed, 20 Feb 2002 23:37:46 -0600
- Subject: Compiling kawa with cygwin
Hi,
I tried to compile Kawa with Cygwin today. I've been using the pure
Java version on Windows 2000 that is compiled with Ant, but I wanted the
readline support. The changes needed to make the "./configure; make;
make check; make install" sequence is almost trivial. But I don't know
where is the best place to make the changes.
Here's my hand made changes to various files:
1. config.sub: (config.guess outputs i686-pc-cygwin).
2. The JDK (1.3.1_01)'s javac has trouble understanding UNIX style
CLASSPATHs. So everywhere in the Makefile the construct
CLASSPATH=$(JAVAROOT):$(srcdir)/$(JAVAROOT):$$CLASSPATH
or something similar is used, the Cygwin utility command cygpath is used
to do the conversion. Thus the line becomes
CLASSPATH=`cygpath --path --windows
$(JAVAROOT):$(srcdir)/$(JAVAROOT):\`cygpath --path --unix $$CLASSPATH\``
I made five such changes to Make-rules before running configure.
3. For the KAWALIB variable in bin/Makefile, because it is used in C
code, I have to pipe the output of cygpath through sed that turns \ into
\\. Because of the many levels of processing and escaping, the line
becomes
WITHOUT_GCJ_DEFS = -DJAVA='"java"' -DKAWALIB=\"`cygpath --path
--windows $(datadir)/java/kawa-$(VERSION).jar | sed
's/\\\\/\\\\\\\\/g'`\"
4. For some reason, the following command is executed while make is
working in the bin directory
gcc -g -O2 kawa.c -o kawa
which is wrong. I have to add $(EXEEXT) to the kawa listed in the
bin_PROGRAMS line to get the correct result.
Everything else works!
--
Weiqi Gao
weiqigao@networkusa.net