sdx-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[sdx-developers] build.sh


From: Patrice Pillot
Subject: [sdx-developers] build.sh
Date: Wed, 20 Feb 2002 15:20:03 +0100
User-agent: Mutt/1.3.23i

Salut,

Voilà, j'ai enfin eu le courage de me remettre au boulot en horaires
de nuit hier soir. Vous trouverez en pj le build.sh. J'ai pris soin de
le comparer aux nouveaux script de Pierrick, je pense que c'est OK je
n'ai d'ailleurs pas trouvé de modifications de fond. 

Les noms de variables sont volontairement un peu plus verbeux par
souci de clarté (je me souviens qu'au début j'avais tendance à me
mélanger les pinceaux entre les deux répertoires lib par exemple) et
tous préfixés par SDX_ pour éviter d'éventuels télescopages.

A la différence des .bat, j'ai tout regroupé en un seul script,
celui-ci étant malgré tout composé de plusieurs fonctions appelées en
fonctions des cibles du make. Dans cet esprit, puis-je me permettre de
suggérer la désintégration de lcp.bat. c'est ce que les Perl Mongers
appelle un "one-liner", non ?




Le gros problème est du côté du choix du bon ant. Selon que
j'utilise le ant 1.1 fourni avec SDX ou le ant 1.2 local, je n'ai pas
la même chose :

----
Pour la cible package :

pillot:~/BOULOT/SDX# diff -r build_pack_ant1.*
Binary files build_pack_ant1.1/aa1_sdx.jar and build_pack_ant1.2/aa1_sdx.jar 
differ
Only in build_pack_ant1.1/classes: Manifest.mf
Only in build_pack_ant1.1/classes/com/lucene/queryParser: QueryParser.jj
Only in build_pack_ant1.1/classes/fr/gouv/culture/sdx: taglibs

Je crois avoir trouvé ce matin une explication à ce problème : lors de
la construction de la cible compile j'ai le message suivant :

compile:
    [javac] Compiling 67 source files to /home/pillot/SDX/build/classes
    [javac] The implicit copying of support files by javac has been deprecated. 
Use the copydir task to copy support files explicitly.
    [javac] Copying 3 support files to /home/pillot/SDX/build/classes

J'ai donc comme l'impression que la fonction de copie implicite
utilisée ne recopie pas, ici, les fichiers autres que les .java.

---- 
Pour la cible dist, je suis en plus obligé de créer dans build/lib un
répertoire bin contenant un antRun sinon plantage sur la création des
javadocs. Je retrouve bien sûr les erreurs précédentes auxquelles s'ajoutent :

pillot:~/BOULOT/SDX# diff -r dist_dist_ant1.*
Only in dist_dist_ant1.2/sdx-1.1b2/docs: api
Binary files dist_dist_ant1.1/sdx-1.1b2/webapps/sdx/WEB-INF/lib/aa1_sdx.jar and 
dist_dist_ant1.2/sdx-1.1b2/webapps/sdx/WEB-INF/lib/aa1_sdx.jar differ
Only in dist_dist_ant1.2/sdx-1.1b2/webapps/sdx/sdxdoc: javadocs

Pour la cible dist-zip j'ai des résultats similaires à ceux de dist.

Quelqu'un a une idée ? On revient au Makefile :-). Toujours pas lu la
man page de ant, shame on me...

Par contre pas eu le temps de tester les différents .jar obtenus ni
même de faire des diff sur leur contenus.



J'ai par ailleurs un petit problème avec le build.xml. Serait-il
possible de remplacer :
                <property name="dist.root" value="../../../dist"/>
par :
                <property name="dist.root" value="../../dist"/>

Je m'explique. A la différence de windows 98, les systèmes unix
n'autorisent pas n'importe qui à écrire n'importe où. Imaginons, ce
qui n'a rien d'invraissemblable, que l'utilisateur dupont, dont le
"home directory" sera probablement /home/dupont y installe les sources
de SDX. "basedir" aura donc pour valeur /home/dupont/sdx_v1/build. Ce
qui fait que ../../.. nous amène dans /home qui est un répertoire où
il est peu probable que notre ami dupont ait le droit d'écrire et de
créer une distribution de SDX. La même demande vaut bien sûr également
pour build.dir. ../.. nous amène au même niveau que les sources ce qui
me semble correct. Mais peut-être y-a-t'il une raison sous windows ?

A +,

pp

Attachment: build.sh
Description: Text Data


reply via email to

[Prev in Thread] Current Thread [Next in Thread]