friskolon wrote:Bonjour,
Serait-il possible à chaque nouveau build ready-to-use d'inclure le n° de version dans 1 des onglets du logiciel Qet (onglet A propos par exemple) afin de savoir quelle version on utilise si on le désire.
exemple pour la rev-1935-x86-win32-readytouse.zip : mettre 0.3a rev 1935
La raison de ma demande est que j'ai passé des schémas à une personne qui était en 0.3a (1ère version), alors que moi je suis en 0.3a-1935.
Les schémas obtenus n'étaient pas identiques car j'utilise certaines fonctions qui ont été débug ou ajoutées depuis la 1ère version.
Merci.
Bonjour friskolon,
Je pense pouvoir te dire que les prochaines builds Windows serons tagué comme sous les debs, j'y travaille.
Le numéro de version svn apparaîtra dans le menu a propos.
Voila, pour un début ça fonctionne, même si l'on peux mieux faire pour les scripts :p
Cygwin dans VM :
Qet_svn_tagg.sh
#!/bin/bash
# trouve la derniere revision de svn://svn.tuxfamily.org/svnroot/qet/qet/trunk
if [ -z "$HEAD" ] ; then
HEAD=$(svn --xml info svn://svn.tuxfamily.org/svnroot/qet/qet/trunk | grep revision=\" | tail -1 | cut -d\" -f2) #trunk
echo -e "\033[1;34mdownload source qelectrotech-0.30.r$HEAD.\033[m"
fi
#variables repertoires de travail
#DEFAULT_DIR="/home/laurent"
#TEMP_DIR="/home/laurent"
#svn export
#cd $TEMP_DIR
svn export svn://svn.tuxfamily.org/svnroot/qet/qet/trunk qelectrotech_trunk/
#tag de la version
cd qelectrotech_trunk/sources
sed -i "s/const QString displayedVersion = \"0.3\"/const QString displayedVersion = \"0.30+svn$HEAD\"/" qet.h
exit
Merci à Merlin8282 pour son aide sur sed ;-)
Compilation dans VM:
Qet_build.bat
rem Dossier de travail
set working_directory=%~dp0
//on supprime le qelectrotech.exe dans le repertoire bin
cd /d %working_directory%\packaging_windows\files\bin
del /s *.exe
cd ..
//on supprime les repertoires elements, examples, lang et titleblocks
rd elements /S /Q
rd examples /S /Q
rd lang /S /Q
rd titleblocks /S /Q
//on crée de nouveaux dossiers
MD elements examples lang titleblocks
//on se rend dans le working_directory et on supprime l'ancienne version de qelectrotech_trunk
cd /d %working_directory%
rd qelectrotech_trunk /S /Q
//on déplace l'export du svn du trunk qelectrotech et taggé dans le working_directory
move c:\cygwin\home\test\qelectrotech_trunk C:\Users\test\Desktop
cd /d %working_directory%\qelectrotech_trunk
//on lance la compilation
qmake
mingw32-make -j9 -f Makefile.Release
//on copie le exe dans le repertoire files/bin
copy /Y release\qelectrotech.exe ..\packaging_windows\files\bin
//on copie les nouveaux dossiers dans le repertoire files
xcopy /Y elements ..\packaging_windows\files\elements /s
xcopy /Y examples ..\packaging_windows\files\examples /s
xcopy /Y lang ..\packaging_windows\files\lang /s
xcopy /Y titleblocks ..\packaging_windows\files\titleblocks /s
mingw32-make clean //supprime tous les fichiers inutiles.
exit
Apres il reste plus qu'a lancer le script nsis pour produire l'installateur sur Qet.
Todo:
Ou que je trouve le moyen de le lancer en ligne de commande.
Ajouter des commandes dans le script pour mettre à jour les fichiers de la ReadyToUse, créer l'archive en zip.
(remplacer le .exe dans bin et les dossiers: elements, examples, lang et titleblock dans le squelette)
Upload en ssh des fichiers installateur et ReadyToUse et création d'un répertoire %date (`date +%y%m%d`) sur le ftp.
ssh + sed pour éditer le %date du script "php dl_link.inc.php" pour le lien "Accéder à la version la plus récente de QElectroTech"
Là ça pourrait p-e être aussi amusant que sous debian pour faire des builds :p
c-a-d tout automatiser sous forme de scripts, pour avoir rien à faire
"Le jour où tu découvres le Libre, tu sais que tu ne pourras jamais plus revenir en arrière..."