|
From: | Mark Wielaard |
Subject: | Re: [Cp-tools-discuss] build |
Date: | 10 May 2002 02:26:33 +0200 |
Hi, On Fri, 2002-05-10 at 00:29, Nic Ferrier wrote: > The latest version of automakejar is in the paperclips cvs. The > version elsewhere works but there is a fix for a particular feature in > the paperclips cvs version. > > The tool does not have it's own project or webpage yet. OK, I have something that almost works out of the box. This seems simple and usefull. It would be nice to at least create a CVS module for it. Note that some files have notices like: # (c) Nic Ferrier - Tapsell-Ferrier Limited 2002 # # You are free to redistribute this file. NO WARRANTY or fitness # for purpose is implied by this notice. Which is not a real free software license since it does not permit distributing changed versions. Not, that that stops me from distributing modified versions in this email :) I have to get some sleep now, but I will show what I did so I will remember when I wake up... Please correct me if I make wrong assumptions. Combined with your email this is almost a real manual for automakejar... - What are the dependencies precisely? I have aclocal (GNU automake) 1.4-p4 and Autoconf version 2.13. - Create a 'configure.in' file as attached. AC_INIT should contain a file inside the source directory so configure can check if the source directory has been specified correctly. - Run 'ac_local' to create a 'aclocal.m4' file from the 'configure.in' file. - Run 'autoconf'. This creates a real 'configure' file from the 'configure.in' and 'aclocal.m4' files. - Create a 'Makefile.aj' file as attached. [XXX - insert some of the stuff that Nic said] Note that it is a simplified version of the paperclips one. PROGRAM variable added. SOURCEDIR added to classpath (should probably not be necessary). - Add the attached 'automakejar' program to your project dir and make sure it is executable (chmod 755 automakejar). - Run './automakejar Makefile.in' to create a 'Makefile.in' file from your 'Makefile.aj' file. - Run './configure' (I don't seem to be able to do something like --with-gcj or --with-javac which would be very nice. Same for --with-jar) - Create a 'lib/manifest.mf' file as attached. The Main-Class attribute should point to the main class (duh). - Run 'make' This does not actually work since for some reason it detects gcj but does not add -C to the JAVAC_OPTS, so add it manually. Also when using gcj 3.0 -classpath overrides the system classpath, so you should change it to -CLASSPATH by hand. (Since this also works with gcj 3.1 I propose to make this the standard switch when using gcj.) - Run 'gij -jar gjdoc.jar'. Yeah! Some other observations: - The original check for make dist in the paperclips version didn't detect my system as GNU/Linux :( - make dist includes lots of stuff, not just the distribution files. - For very simple Manifests you could create it from the main-class argument (if added). - There is no make install or dist-check target. - Haven't looked at javadoc generation yet (which should be the ultimate bootstrap test for gjdoc!) Good night, Mark
configure.in
Description: Text document
Makefile.aj
Description: Text Data
automakejar
Description: Text Data
manifest.mf
Description: Text document
[Prev in Thread] | Current Thread | [Next in Thread] |