1 # Maintainer: Michele Mocciola <mickele>
2 # Contributor: Brice Méalier <mealier_brice@yahoo.fr>
7 pkgdesc="Tcl/Tk interface to run Code-Aster (prepare and start calculations)."
8 url="http://www.code-aster.org/"
10 depends=('python' 'tcl' 'tk' 'openssh' 'x11-ssh-askpass' 'net-tools')
11 makedepends=('desktop-file-utils' 'sed' 'patch' 'coreutils')
12 optdepends=('inetutils: if you want to connect to aster server with rsh' 'eficas=1.17.0: to edit Code_Aster command files' 'gibi>=2000: to generate and post-process meshes' 'gmsh: to generate and post-process mesh' 'gnuplot: to plot outputs to X11, PostScript, PNG, GIF, and others' 'grace: to plot outputs in 2D graphs')
13 arch=('i686' 'x86_64')
14 install=(astk.install)
15 source=("http://www.code-aster.org/V2/UPLOAD/DOC/Telechargement/aster-full-src-10.1.0-4.noarch.tar.gz" "http://www.caelinux.org/wiki/images/c/c3/Helpers2007.tar.gz" "${pkgname}-${pkgver}.diff" "astk-ssh" "astk.png" "astk.desktop")
19 _astervershort=${_asterver:0:4}
21 _asrundir=${_asterdir}/lib/python${_pythonver}/site-packages
22 _outilsdir=${_asterdir}/outils
23 _installdir=${_asterdir}/ASTK
25 _pythoncmd=/usr/bin/python
26 _editor='/usr/bin/emacs -display @D'
27 _xterm='/usr/bin/xterm -display @D -e @E'
30 cd ${srcdir} || return 1
32 bsdtar -x -f aster-full-src-${_asterver}/SRC/${pkgname}-${pkgver}.tar.gz || return 1
34 msg "Modify the source code and sets variables"
36 cd ${srcdir}/${pkgname}-${pkgver} || return 1
38 patch -Np1 -i ${srcdir}/${pkgname}-${pkgver}.diff || return 1
40 sed -e "s|?TOOLS_DIR?/eficasTk|/usr/bin/eficasTk|g" \
41 -e "s|?TOOLS_DIR?/eficasQt|/usr/bin/eficasQt|g" \
42 -e "s|?TOOLS_DIR?/gmsh|/usr/bin/gmsh|g" \
43 -e "s|?TOOLS_DIR?/gibi.x|/opt/gibi/gibi|g" \
44 -e "s|?TOOLS_DIR?/xmgrace|/usr/bin/xmgrace|g" \
45 -e "s|?TOOLS_DIR?/../../?vaster?|${_asterdir}/STA${_astervershort}|g" \
46 -i ASTK_CLIENT/etc/astkrc/outils
50 sed -e "s|?HOME_PYTHON?/lib|/usr/lib/python${_pythonver}/lib-dynload|" \
51 -e "s|?ASRUN_SITE_PKG?|${_asrundir}|" \
52 -e "s|?HOME_MED?|/usr|" \
53 -e "s|?HOME_HDF?|/usr|" \
54 -i ASTK_SERV/etc/profile.${_SH}
57 sed -e "s|?PS_COMMAND_CPU?|/bin/ps -e --width=512 -ocputime -ocommand|g" \
58 -e "s|?PS_COMMAND_PID?|/bin/ps -e --width=512 -opid -ocommand|g" \
59 -e "s|?DEBUGGER_COMMAND_POST?|gdb -batch --command=@D @E @C|g" \
60 -e "s|?DEBUGGER_COMMAND?|ddd --debugger gdb --command=@D @E @C|g" \
61 -e "s|?MPIRUN?|/opt/mpich2/bin/mpiexec.mpd|g" \
62 -i ASTK_SERV/etc/asrun
64 # This simplifies maintaining the PKGBUILD
65 for _FILE in `grep -R -l "?IFDEF?" *`
67 if [ "$CARCH" = "x86_64" ]; then
68 sed -e "s|?IFDEF?|LINUX64|g" \
71 sed -e "s|?IFDEF?|P_LINUX|g" \
75 for _FILE in `grep -R -l "/opt/aster/ASTK" *`
77 sed -e "s|/opt/aster/ASTK|${_installdir}|g" \
80 for _FILE in `grep -R -l "?SHELL_EXECUTION?" *`
82 sed -e "s|?SHELL_EXECUTION?|${_shellcmd}|g" \
85 for _FILE in `grep -R -l "?PYTHON_EXE?" *`
87 sed -e "s|?PYTHON_EXE?|${_pythoncmd}|g" \
90 for _FILE in `grep -R -l "?WISH_EXE?" *`
92 sed -e "s|?WISH_EXE?|/usr/bin/wish|g" \
95 for _FILE in `grep -R -l "?ASTER_ROOT?" *`
97 sed -e "s|?ASTER_ROOT?|${_asterdir}|" \
100 for _FILE in `grep -R -l "?ASTER_VERSION?" *`
102 sed -e "s|?ASTER_VERSION?|STA${_astervershort}|" \
105 for _FILE in `grep -R -l "?ASTER_CONFDIR?" *`
107 sed -e "s|?ASTER_CONFDIR?|${_asterdir}/etc/codeaster|" \
110 for _FILE in `grep -R -l "?EDITOR?" *`
112 sed -e "s|?EDITOR?|${_editor}|" \
115 for _FILE in `grep -R -l "?TERMINAL?" *`
117 sed -e "s|?TERMINAL?|${_xterm}|" \
124 msg "Install ${pkgname}"
126 cd ${srcdir}/${pkgname}-${pkgver} || return 1
129 install -m 755 -d "${pkgdir}${_installdir}/ASTK_CLIENT" || return 1
130 cp -rf "${srcdir}/${pkgname}-${pkgver}/ASTK_CLIENT/bin" "${pkgdir}${_installdir}/ASTK_CLIENT" || return 1
131 install -m 755 "${srcdir}/astk-ssh" "${pkgdir}${_installdir}/ASTK_CLIENT/bin" || return 1
134 install -m 755 -d "${pkgdir}${_installdir}/ASTK_SERV" || return 1
135 cp -rf "${srcdir}/${pkgname}-${pkgver}/ASTK_SERV/bin" "${pkgdir}${_installdir}/ASTK_SERV" || return 1
136 ln -sf ./as_run "${pkgdir}${_installdir}/ASTK_SERV/bin/as_serv" || return 1
139 install -m 755 -d "${pkgdir}${_asterdir}/bin" || return 1
140 cp -rf ${pkgdir}${_installdir}/ASTK_SERV/bin/* ${pkgdir}${_asterdir}/bin || return 1
141 cp -rf ${pkgdir}${_installdir}/ASTK_CLIENT/bin/* ${pkgdir}${_asterdir}/bin || return 1
142 for _link in get getop show
144 ln -sf ./as_run "${pkgdir}${_asterdir}/bin/${_link}" || return 1
148 install -m 755 -d ${pkgdir}/usr/bin || return 1
149 for _FILE in astk astk-ssh as_run
151 ln -s "${_asterdir}/bin/${_FILE}" "${pkgdir}/usr/bin" || return 1
155 cp -rf "${srcdir}/${pkgname}-${pkgver}/configuration/ASTK/ASTK_SERV/lib" "${pkgdir}${_installdir}/ASTK_SERV" || return 1
158 cp -rf ASTK_SERV/asrun ${pkgdir}${_installdir}/ASTK_SERV || return 1
161 cp -rf ${srcdir}/${pkgname}-${pkgver}/ASTK_CLIENT/lib ${pkgdir}${_installdir}/ASTK_CLIENT || return 1
164 install -m 755 -d ${pkgdir}${_asterdir}/lib/astk || return 1
165 cp -rf ${pkgdir}${_installdir}/ASTK_CLIENT/lib/* ${pkgdir}${_asterdir}/lib/astk || return 1
166 install -m 755 -d ${pkgdir}${_asrundir} || return 1
167 cp -rf ${pkgdir}${_installdir}/ASTK_SERV/asrun ${pkgdir}${_asrundir} || return 1
170 install -m 755 -d ${pkgdir}${_outilsdir} || return 1
171 cp -rf ${srcdir}/${pkgname}-${pkgver}/configuration/deprecated_outils.sh ${pkgdir}${_outilsdir} || return 1
172 for _link in as_run astk bsf get getop show
174 ln -sf ./deprecated_outils.sh ${pkgdir}${_outilsdir}/${_link} || return 1
176 ln -sf /opt/metis-edf/bin/onmetis ${pkgdir}${_outilsdir} || return 1
177 ln -sf /opt/metis-edf/bin/kmetis ${pkgdir}${_outilsdir} || return 1
178 ln -sf /opt/metis-edf/bin/pmetis ${pkgdir}${_outilsdir} || return 1
179 ln -sf /usr/bin/gnuplot ${pkgdir}${_outilsdir} || return 1
180 ln -sf /usr/bin/gmsh ${pkgdir}${_outilsdir} || return 1
181 ln -sf /usr/bin/xmgrace ${pkgdir}${_outilsdir} || return 1
182 ln -sf /usr/bin/gracebat ${pkgdir}${_outilsdir} || return 1
183 ln -sf /opt/eficas/eficasQt ${pkgdir}${_outilsdir} || return 1
184 ln -sf /opt/eficas/eficasQt ${pkgdir}${_outilsdir}/eficas || return 1
185 ln -sf /opt/eficas/eficasTk ${pkgdir}${_outilsdir} || return 1
186 ln -sf /opt/gibi/gibi ${pkgdir}${_outilsdir} || return 1
189 install -m 755 -d ${pkgdir}${_asterdir}/share/codeaster/asrun || return 1
190 cp -rf ${srcdir}/${pkgname}-${pkgver}/ASTK_SERV/unittest ${pkgdir}${_asterdir}/share/codeaster/asrun || return 1
191 cp -rf ${srcdir}/${pkgname}-${pkgver}/ASTK_SERV/share/codeaster/asrun/* ${pkgdir}${_asterdir}/share/codeaster/asrun || return 1
192 cp -rf ${srcdir}/${pkgname}-${pkgver}/ASTK_SERV/i18n/locale ${pkgdir}${_asterdir}/share || return 1
195 install -m 755 -d "${pkgdir}${_asterdir}/etc/codeaster" || return 1
196 cp -rf ${srcdir}/${pkgname}-${pkgver}/ASTK_SERV/etc/* ${pkgdir}${_asterdir}/etc/codeaster || return 1
197 cp -rf ${srcdir}/${pkgname}-${pkgver}/ASTK_CLIENT/etc/astkrc ${pkgdir}${_asterdir}/etc/codeaster || return 1
198 # ln -sf ${_asterdir}/etc/codeaster/astkrc ${pkgdir}${_installdir}/ASTK_CLIENT/etc || return 1
200 # compile python files
201 python /usr/lib/python${_pythonver}/compileall.py -f ${pkgdir}${_installdir}
202 python -O /usr/lib/python${_pythonver}/compileall.py -f ${pkgdir}${_installdir}
203 python /usr/lib/python${_pythonver}/compileall.py -f ${pkgdir}${_asterdir}/lib
204 python -O /usr/lib/python${_pythonver}/compileall.py -f ${pkgdir}${_asterdir}/lib
206 # Utility from caelinux
207 for _FILE in GenEnsightCase.py unv2abaqus.py unv2impact.py unv2star nastran_to_univ unv2ElmerUNV.py UNV2X-GUI.wish CreateJob.py star2unv unv2gmsh.py unv2x.py
209 install -m 755 "${srcdir}/${_FILE}" "${pkgdir}${_asterdir}/bin" || return 1
212 msg "Install pixmaps and desktop shortcut"
213 install -m 755 -d "${pkgdir}/usr/share/pixmaps" || return 1
214 cp "${srcdir}/${pkgname}.png" "${pkgdir}/usr/share/pixmaps/" || return 1
215 desktop-file-install \
216 --dir="${pkgdir}/usr/share/applications" \
217 "${srcdir}/${pkgname}.desktop" || return 1
219 md5sums=('49fe55a0a46491124c16965a2db59c5e'
220 'fba6f87c843807a0857069ceed248309'
221 'f9609230e2e7ecc216016a539e9dcb57'
222 '6fba5ebcdf75cccea2122c85df5a6306'
223 '3d432dfac21b5351cf96ac80ae55811d'
224 '79e3e1cf77a476d0b9e9d9aa21a1e723')