## ## tcl.spec -- OpenPKG RPM Specification ## Copyright (c) 2000-2004 The OpenPKG Project ## Copyright (c) 2000-2004 Ralf S. Engelschall ## Copyright (c) 2000-2004 Cable & Wireless ## ## Permission to use, copy, modify, and distribute this software for ## any purpose with or without fee is hereby granted, provided that ## the above copyright notice and this permission notice appear in all ## copies. ## ## THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED ## WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF ## MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. ## IN NO EVENT SHALL THE AUTHORS AND COPYRIGHT HOLDERS AND THEIR ## CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, ## SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT ## LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF ## USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ## ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, ## OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT ## OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF ## SUCH DAMAGE. ## # package version %define V_major 8 %define V_minor 4 %define V_level 6 # package information Name: tcl Summary: Tool Command Language (TCL) URL: http://tcl.activestate.com/ Vendor: John Ousterhout Packager: The OpenPKG Project Distribution: OpenPKG Class: BASE Group: Language License: GPL Version: %{V_major}.%{V_minor}.%{V_level} Release: 20040304 # package options %option with_x11 no # list of sources Source0: ftp://ftp.scriptics.com/pub/tcl/tcl%{V_major}_%{V_minor}/tcl%{V_major}.%{V_minor}.%{V_level}-src.tar.gz Source1: ftp://ftp.scriptics.com/pub/tcl/tcl%{V_major}_%{V_minor}/tk%{V_major}.%{V_minor}.%{V_level}-src.tar.gz # build information Prefix: %{l_prefix} BuildRoot: %{l_buildroot} BuildPreReq: OpenPKG, openpkg >= 20040130 PreReq: OpenPKG, openpkg >= 20040130 %if "%{with_x11}" == "yes" BuildPreReq: X11 PreReq: X11 %endif AutoReq: no AutoReqProv: no %description The Tool Command Language (TCL), optionally including the popular TCL Widget Toolkit (Tk). %track prog tcl:tcl = { version = %{version} url = ftp://ftp.scriptics.com/pub/tcl/tcl8_4/ regex = tcl(__VER__)-src\.tar.gz } prog tcl:tk = { version = %{version} url = ftp://ftp.scriptics.com/pub/tcl/tcl8_4/ regex = tk(__VER__)-src\.tar.gz } %prep %setup -q -c -n tcl-%{V_major}.%{V_minor}.%{V_level} %setup -q -T -D -a 1 %build # build Tcl ( cd tcl%{V_major}.%{V_minor}.%{V_level}/unix CC="%{l_cc}" \ CFLAGS="%{l_cflags -O}" \ ./configure \ --prefix=%{l_prefix} \ --includedir=%{l_prefix}/include/tcl \ --disable-shared %{l_make} %{l_mflags -O} ) || exit $? # build Tk (optional) %if "%{with_x11}" == "yes" ( cd tk%{V_major}.%{V_minor}.%{V_level}/unix CC="%{l_cc}" \ CFLAGS="%{l_cflags -O}" \ ./configure \ --prefix=%{l_prefix} \ --includedir=%{l_prefix}/include/tcl \ --disable-shared \ --with-tcl=../../tcl%{V_major}.%{V_minor}.%{V_level}/unix \ --with-x \ --x-includes=`%{l_prefix}/etc/rc --query x11_incdir` \ --x-libraries=`%{l_prefix}/etc/rc --query x11_libdir` %{l_make} %{l_mflags -O} ) || exit $? %endif %install rm -rf $RPM_BUILD_ROOT # install Tcl ( cd tcl%{V_major}.%{V_minor}.%{V_level}/unix %{l_shtool} subst \ -e 's;-L[^ ]*;%{l_ldflags};g' \ -e "s;\\(TCL_BUILD_STUB_LIB_PATH=\\).*;\\1'%{l_prefix}/lib/libtclstub%{V_major}.%{V_minor}\${TCL_DBGX}.a';" \ tclConfig.sh %{l_make} %{l_mflags} install INSTALL_ROOT=$RPM_BUILD_ROOT ) || exit $? ( cd $RPM_BUILD_ROOT%{l_prefix} mv bin/tclsh%{V_major}.%{V_minor} bin/tclsh ln lib/libtcl%{V_major}.%{V_minor}.a lib/libtcl.a ln lib/libtclstub%{V_major}.%{V_minor}.a lib/libtclstub.a cd man/mann for mo in *.n; do mn=`echo $mo | sed -e 's;\.n$;.3;'` mv $mo ../man3/$mn done cd ../man3 chmod u+w * for mp in *.3; do if [ ".`echo $mp | grep '^Tcl_'`" = . ]; then mv $mp Tcl_$mp fi done ) || exit $? # install Tk (optional) %if "%{with_x11}" == "yes" ( cd tk%{V_major}.%{V_minor}.%{V_level}/unix %{l_shtool} subst \ -e 's;-L[^ ]*;%{l_ldflags};g' \ -e "s;\\(TK_BUILD_STUB_LIB_PATH=\\).*;\\1'%{l_prefix}/lib/libtkstub%{V_major}.%{V_minor}.a';" \ tkConfig.sh %{l_make} %{l_mflags} install INSTALL_ROOT=$RPM_BUILD_ROOT ) || exit $? ( cd $RPM_BUILD_ROOT%{l_prefix} mv bin/wish%{V_major}.%{V_minor} bin/wish ln lib/libtk%{V_major}.%{V_minor}.a lib/libtk.a ln lib/libtkstub%{V_major}.%{V_minor}.a lib/libtkstub.a cd man/mann for mo in *.n; do mn=`echo $mo | sed -e 's;\.n$;.3;'` mv $mo ../man3/$mn done cd ../man3 chmod u+w * for mp in *.3; do if [ ".`echo $mp | grep '^Tcl_'`" = . ] && \ [ ".`echo $mp | grep '^Tk_'`" = . ]; then mv $mp Tk_$mp fi done ) || exit $? %endif # post-process installation strip $RPM_BUILD_ROOT%{l_prefix}/bin/* >/dev/null 2>&1 || true %{l_rpmtool} files -v -ofiles -r$RPM_BUILD_ROOT %{l_files_std} %files -f files %clean rm -rf $RPM_BUILD_ROOT