From 73be485eb591b81113cc3aef75fefd88a175b028 Mon Sep 17 00:00:00 2001 From: Tim Fenn Date: Wed, 11 Aug 2010 11:37:36 -0700 Subject: [PATCH] initial commit --- .gitignore | 2 + __init__.py | 1 + coot-configure.in.patch | 41 +++++++ coot-user-manual.texi.patch | 24 ++++ coot.desktop | 10 ++ coot.in | 62 ++++++++++ coot.png | Bin 0 -> 1271 bytes coot.spec | 236 ++++++++++++++++++++++++++++++++++++ sources | 2 + svn-revision.cc | 6 + 10 files changed, 384 insertions(+) create mode 100644 __init__.py create mode 100644 coot-configure.in.patch create mode 100644 coot-user-manual.texi.patch create mode 100644 coot.desktop create mode 100755 coot.in create mode 100644 coot.png create mode 100644 coot.spec create mode 100644 svn-revision.cc diff --git a/.gitignore b/.gitignore index e69de29..0a061f3 100644 --- a/.gitignore +++ b/.gitignore @@ -0,0 +1,2 @@ +coot-0.6.1-20100127svn2740.tar.gz +coot-reference-structures.tar.gz diff --git a/__init__.py b/__init__.py new file mode 100644 index 0000000..83d04e7 --- /dev/null +++ b/__init__.py @@ -0,0 +1 @@ +# File to allow this directory to be treated as a python package. diff --git a/coot-configure.in.patch b/coot-configure.in.patch new file mode 100644 index 0000000..f8501c2 --- /dev/null +++ b/coot-configure.in.patch @@ -0,0 +1,41 @@ +--- configure.in_orig 2010-01-27 16:15:51.387782244 -0800 ++++ configure.in 2010-01-27 16:44:53.586783325 -0800 +@@ -132,13 +132,26 @@ + AM_PATH_GLUT(, [echo You need the GLUT utility library; exit 1], AC_MSG_ERROR([Cannot find proper GLUT version])) + + dnl Check for MMDB. +-AM_PATH_MMDB(, [echo Error locating necessary mmdb; exit 1],,) ++# AM_PATH_MMDB(, [echo Error locating necessary mmdb; exit 1],,) + +-AM_WITH_MMDBSSM ++# AM_WITH_MMDBSSM ++PKG_CHECK_MODULES(MMDB, mmdb >= 1.12) ++MMDB_CXXFLAGS="-DHAVE_MMDB_IGNORE_HASH -DHAVE_MMDB_WITH_CISPEP $MMDB_CFLAGS" ++AC_SUBST(MMDB_CXXFLAGS) ++AC_SUBST(MMDB_LIBS) ++ ++PKG_CHECK_MODULES(MMDBSSM, ssm >= 0.1) ++MMDBSSM_CXXFLAGS="-DHAVE_SSMLIB $MMDBSSM_CFLAGS" ++AC_SUBST(MMDBSSM_CXXFLAGS) ++AC_SUBST(MMDBSSM_LIBS) + + dnl Check for Clipper. we exit if clipper is not found. + # +-AM_PATH_CLIPPER(, [echo Error locating Clipper - a CNS-enabled version of Clipper \(2.1-090520-ac or later\) is required now; exit 1],AC_MSG_ERROR([Cannot find Clipper])) ++# AM_PATH_CLIPPER(, [echo Error locating Clipper - a CNS-enabled version of Clipper \(2.1-090520-ac or later\) is required now; exit 1],AC_MSG_ERROR([Cannot find Clipper])) ++PKG_CHECK_MODULES(CLIPPER, clipper >= 2.0) ++CLIPPER_CXXFLAGS=$CLIPPER_CFLAGS ++AC_SUBST(CLIPPER_CXXFLAGS) ++AC_SUBST(CLIPPER_LIBS) + + # we set default coot_guile to true + coot_guile=true +@@ -146,7 +159,7 @@ + if test x$coot_guile = xtrue ; then + GUILE_FLAGS + AM_GUILE_LIB +- AM_GUILE_GUI ++# AM_GUILE_GUI + GUILE_VERSION=$($ac_cv_path_GUILE_CONFIG --version 2>&1 | awk '{split($NF, arr, "[[.]]"); print arr[[1]] "." arr[[2]]}') + echo checking GUILE_VERSION: $GUILE_VERSION + AC_SUBST(GUILE_VERSION) diff --git a/coot-user-manual.texi.patch b/coot-user-manual.texi.patch new file mode 100644 index 0000000..2f8df9a --- /dev/null +++ b/coot-user-manual.texi.patch @@ -0,0 +1,24 @@ +--- doc/user-manual.texi_orig 2010-01-27 16:23:57.630783062 -0800 ++++ doc/user-manual.texi 2010-01-27 16:50:48.507782342 -0800 +@@ -4470,10 +4470,10 @@ + @c note that texi2html (and makeinfo) requires that this c-interface texi file be in the + @c same directory as this file (user-manual.texi) NOT the directory that + @c texi2html is run in. +-@include c-interface.h.texi ++@include c-interface_8h.texi + @node More Scripting Functions + @chapter More Scripting Functions +-@include cc-interface.hh.texi ++@c @include cc-interface.hh.texi + + + +@@ -4491,7 +4491,7 @@ + @c nodes (mutate, povray) and (e.g.) `tips-gui', but has no menu entry for this node + @c + +-@include ../../coot/scheme/coot-scheme-functions.texi ++@c @include ../../coot/scheme/coot-scheme-functions.texi + + + diff --git a/coot.desktop b/coot.desktop new file mode 100644 index 0000000..79a76c6 --- /dev/null +++ b/coot.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=coot +GenericName=coot +Comment=macromolecular model builder +Exec=coot +Icon=coot +Terminal=false +Type=Application +Categories=Graphics;Science diff --git a/coot.in b/coot.in new file mode 100755 index 0000000..bff0148 --- /dev/null +++ b/coot.in @@ -0,0 +1,62 @@ +#!/bin/sh +# -*-shell-script-*- +# coot wrapper script +# Copyright 2004, 2005, 2006, 2007 University of York +# written by Paul Emsley + +COOT_PREFIX="@prefix@" +current_exe_dir="@bindir@" + +coot_real=$current_exe_dir/coot-real +# echo coot-real is at $coot_real + +# ---------------------------------------------------------------------------- +# ---------------------------------------------------------------------------- +# If the COOT_PREFIX is correct, then these should not need modification +# i.e. nothing below here need be changed. +# ---------------------------------------------------------------------------- +# ---------------------------------------------------------------------------- +# +prefix=$COOT_PREFIX + +SYMINFO=$COOT_PREFIX/share/coot/syminfo.lib +COOT_SCHEME_DIR=$COOT_PREFIX/share/coot/scheme +COOT_STANDARD_RESIDUES=$COOT_PREFIX/share/coot/standard-residues.pdb +COOT_PIXMAPS_DIR=$COOT_PREFIX/share/coot/pixmaps +COOT_DATA_DIR=$COOT_PREFIX/share/coot +COOT_RESOURCES_FILE=$COOT_PREFIX/share/coot/cootrc +COOT_REF_STRUCTS=$COOT_PREFIX/share/coot/reference-structures +COOT_PYTHON_DIR= +COOT_REFMAC_LIB_DIR= + +PYTHONPATH=${PYTHONPATH:+"${PYTHONPATH}:"}$COOT_PYTHON_DIR + +GUILE_WARN_DEPRECATED=no + +if [ -n "$LOCAL_GUILE_LOAD_PATH_EXTRAS" ] ; then + GUILE_LOAD_PATH=${LOCAL_GUILE_LOAD_PATH_EXTRAS}:$GUILE_LOAD_PATH + export GUILE_LOAD_PATH +fi + +# echo GUILE_LOAD_PATH is now $GUILE_LOAD_PATH + +export SYMINFO +export COOT_PREFIX +export COOT_STANDARD_RESIDUES +export COOT_REFMAC_LIB_DIR +export COOT_PYTHON_DIR +export PYTHONPATH +export COOT_SCHEME_DIR +export COOT_REF_STRUCTS +export COOT_RESOURCES_FILE +export COOT_PIXMAPS_DIR +export COOT_DATA_DIR + +echo $coot_real $* +$coot_real $* +status=$? + +if [ $status != 0 ] ; then + @bindir@/guile -s $COOT_PREFIX/share/coot/scheme/coot-crash-catcher.scm $coot_real +fi + diff --git a/coot.png b/coot.png new file mode 100644 index 0000000000000000000000000000000000000000..9e6ded7e24754bfa77ee5fe584fd2df36be6e86e GIT binary patch literal 1271 zcmVPx#24YJ`L;(K){{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G`2iOY| z7cwAl4qK}L00ehQL_t(o!|j$^h*nh;$A4?>v(Gv6&FyO@P0Y-$hK1E+NifDss}%$!X@howHXD-}g<^ zMNP{J@_#scpR@O7t^ZnkueBE(#$o&)AcFoYiX+_3UZNo{&YXx%@9BB$pHnVwiGr!r z-xkGYo;}STU-{@+2Q9SVS~^pSZ;A2iJgyvxS|nQbM4v{u6%M_DRN_?9$q~*JY&41M zF1^TON7f@&i(w5|1m8EKiB^n8-ZNBAi92Im9B=61>Gk7U2eB{5$nIHAPI} z^HYzT^umnOPJQD0_qOi(>a&mE`(>N<0iXCZt;9>fZZph-Aqa+H1Z?En>W2+Q37uf) z3epram=~jypPzMRM>hSA`GadeTKCe16>sg+Vi$Q|q+?zeom;yphAuj-NV|2=W^EL# zmDCC(mJ*Lx?s3*aVhORuBV&;{+y_m$eQ&P3;`RA+i@!doqtGqIg^{^An&}ip)i56j zy91#mAaTH4KpWNv0yJ6>q~Q|~X!yhs$eQvir~Gu(MNhppuvY@XtYFwU#W{f>NLA6A zVMBqC)QN;NAd#U`r=blBVU+S_YZzgu_u>0``lr@T7##ZXi0$7jJ7?T6i#9ZMjwA?C z*S&|K0mZlHSZhWo*2s#1kO-1H+_1;*^7tP-ezzm4*6mgl0krX@jnO6@R!zMArVqa! z;Elw$7q<^}9kXrQLsvfa>f$y471i!`S~s?aWM@pY+~d{bcYETUp0wX^S|xN>$;MX6 zj?4+I1}I7o?g}dc1h=52oPBa{Z*;m zswQ&;HwPFq;uWw6x5uGF0gH_gH+#k90gJQ|1NBy^|0|Ghtw}zYs+9pI-n8^xfU)iQ zg+*&dM+pTzsluE?$EO0h7}!d^d&_riUj4CM-Xzt z>awd%%Prgb+Xy?l>#MM3$ISjnIQHIWw$G41%y?SpX$^&Y5|T-Rgwb<`Y26DJ8^Jd{ zVpx=sWfiF|C|T*@y@mLL%V+tG{m&PlTzcdVnx|xM=%C}8lw^S*6C6>+p~H;`lYm7{ z0y%l1Lgmeplor;k)_XuV<$hPRYBVWv{dtnz-q+_pPC_!#6HRs!ohK$!%ajXMsm(51 zY5gI)+2%}R*}|)N@^`6P;iC0^ z?e@1Ib}~V0c79tYSA4OJS3*bHM^ zuUXBGHsyU8E?0@^6Bst5B{Q}>`?6e>rlx01Va=vZTwBh0>+d^+&6>b5y;ZquAaJKb z?jWtgE&+{T3ef9?We%oh#pWQhO( literal 0 HcmV?d00001 diff --git a/coot.spec b/coot.spec new file mode 100644 index 0000000..e48e755 --- /dev/null +++ b/coot.spec @@ -0,0 +1,236 @@ +%{!?python_sitelib: %define python_sitelib %(%{__python} -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} +%define refmac_dictionary %(rpm -q --queryformat '%%{name}-%%{version}' refmac-dictionary) + +Name: coot +Summary: The crystallographic object-oriented toolkit +URL: http://www.biop.ox.ac.uk/coot/ +Version: 0.6.1 +Release: 3.20100127svn2740%{?dist} +# source code is mixed GPLv3+ and LGPLv2+ (see %files for breakdown) +License: GPLv3+ and LGPLv2+ +Group: Applications/Engineering +# The source for this package was pulled from upstream's vcs. Use the +# following commands to generate the tarball: +# svn co -r 2740 http://coot.googlecode.com/svn/trunk/ coot-0.6.1 +# tar cvzf coot-0.6.1-20100127svn2740.tar.gz coot-0.6.1 +Source0: coot-0.6.1-20100127svn2740.tar.gz +Source1: http://www.ysbl.york.ac.uk/~emsley/software/%{name}-reference-structures.tar.gz +Source2: svn-revision.cc +Source3: coot.in +Source4: %{name}.png +Source5: %{name}.desktop +Source6: __init__.py +Patch0: coot-configure.in.patch +Patch1: coot-user-manual.texi.patch +BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) +BuildRequires: autoconf +BuildRequires: automake +BuildRequires: clipper-devel >= 2.1-7 +BuildRequires: desktop-file-utils +BuildRequires: freeglut-devel +BuildRequires: gsl-devel +BuildRequires: gtk2-devel +BuildRequires: gtkglext-devel +BuildRequires: guile-devel +BuildRequires: guile-lib +BuildRequires: imlib-devel +BuildRequires: libcurl-devel +BuildRequires: libgnomecanvas-devel +BuildRequires: libtool +BuildRequires: mmdb-devel >= 1.19 +BuildRequires: python-devel +BuildRequires: pygtk2-devel +BuildRequires: refmac-dictionary +BuildRequires: ssm-devel +BuildRequires: swig +%if 0%{?rhel} +BuildRequires: tetex-latex +%else +BuildRequires: tex(latex) +%endif +BuildRequires: texinfo-tex +Requires: refmac-dictionary + +%description + +Coot is a toolkit for Macromolecular Crystallography and +model-building. Coot uses professional (and free) widgets (with the +GUI builder glade), mmdb, clipper, and OpenGL, together with a new +approach to map contouring and importing/creation and other modeling +and building operations. + +%package devel +Summary: Header files and library for developing programs with coot +Requires: %{name} = %{version}-%{release} +Group: Development/Libraries + +%description devel + +This package contains libraries and header files needed for program +development using the coot macromolecular model building package. + +%package doc +Summary: documentation PDF files for coot +Requires: %{name} = %{version}-%{release} +Group: Applications/Engineering + +%description doc + +the coot-doc package contains information concerning the use and +button/key shortcuts for the coot macromolecular model building +package. + +%prep +%setup -q -a 1 +%patch0 -p0 +%patch1 -p0 + +cp %{SOURCE2} ./src/ +cp %{SOURCE3} ./src/ + +# various cleanups +rm src/coot_wrap_guile_pre.cc +rm src/coot_wrap_python_pre.cc +iconv -f iso8859-1 -t utf-8 README > README.conv && mv -f README.conv README +find . -executable \( -name "*.cc" -o -name "*.cpp" -o -name "*.h" -o -name "*.hh" \) -exec chmod 644 {} \; + +aclocal -I macros +libtoolize --automake --copy +autoconf +automake --copy --add-missing --gnu + +%build +%configure --with-gtk2 --with-guile --with-python --with-pygtk --with-gtkcanvas-prefix=/usr --disable-static CPPFLAGS="-I/usr/include/mmdb -I/usr/include/ssm" CXXFLAGS="$RPM_OPT_FLAGS -fno-strict-aliasing" + +sed -i 's|^hardcode_libdir_flag_spec=.*|hardcode_libdir_flag_spec=""|g' libtool +sed -i 's|^runpath_var=LD_RUN_PATH|runpath_var=DIE_RPATH_DIE|g' libtool + +make %{?_smp_mflags} +pushd doc +texi2pdf user-manual.texi +make coot-keys-and-buttons.pdf +popd + +%install +rm -rf %{buildroot} +make install DESTDIR=%{buildroot} INSTALL='install -p' + +mv reference-structures %{buildroot}%{_datadir}/coot/ +sed -i 's|COOT_PYTHON_DIR=|COOT_PYTHON_DIR=%{python_sitelib}/coot|' src/coot +sed -i 's|COOT_REFMAC_LIB_DIR=|COOT_REFMAC_LIB_DIR=%{_datadir}/%{refmac_dictionary}|' src/coot +install -p -m 755 src/coot %{buildroot}%{_bindir}/ + +# remove unpackaged files from the buildroot +rm -f %{buildroot}%{_libdir}/*.la + +# headers +mkdir %{buildroot}%{_includedir}/coot +mv %{buildroot}%{_includedir}/*.h %{buildroot}%{_includedir}/coot/ +mv %{buildroot}%{_includedir}/*.hh %{buildroot}%{_includedir}/coot/ + +# python stuff +mkdir -p %{buildroot}%{python_sitelib}/coot +mv %{buildroot}%{_datadir}/coot/python/* %{buildroot}%{python_sitelib}/coot/ +cp %{SOURCE6} %{buildroot}%{python_sitelib}/coot/ +chmod 644 %{buildroot}%{python_sitelib}/coot/coot.py + +# desktop file +desktop-file-install --vendor='' --dir=%{buildroot}%{_datadir}/applications %{SOURCE5} +mkdir -p %{buildroot}%{_datadir}/pixmaps +install -p -m 644 %{SOURCE4} %{buildroot}%{_datadir}/pixmaps/ + +%clean +rm -rf %{buildroot} + +%check +# this fails - need to fix upstream +# make check + +%post -p /sbin/ldconfig + +%postun -p /sbin/ldconfig + +%files +%defattr(-,root,root,-) +%doc AUTHORS README COPYING +%{_bindir}/* +# libccp4mg-utils.so* is LGPLv2+ +# libcoot-surface.so* is a mix of LGPLv2+ and GPLv3+ +# all others are GPLv3+ +%{_libdir}/*.so.* +%{_datadir}/coot/ +%{_datadir}/applications/%{name}.desktop +%{_datadir}/pixmaps/%{name}.png +%{python_sitelib}/coot/ + +%files devel +%defattr(-,root,root,-) +%{_libdir}/*.so +%{_includedir}/coot/ + +%files doc +%defattr(-,root,root,-) +%doc doc/coot-keys-and-buttons.pdf doc/user-manual.pdf + +%changelog +* Thu Aug 05 2010 Tim Fenn - 0.6.1-3.20100127svn2740 +- fix file attr +- add comment to make check error + +* Tue Jul 20 2010 Tim Fenn - 0.6.1-2.20100127svn2740 +- move some documentation to subpackage +- add check section + +* Wed Jan 27 2010 Tim Fenn - 0.6.1-1.20100127svn2740 +- update to SVN 2740, 0.6.1 release +- add curl buildrequires + +* Thu Dec 03 2009 Tim Fenn - 0.6-6.20091203svn2545 +- update to SVN 2545, 0.6 release + +* Mon Nov 30 2009 Tim Fenn - 0.6-5.20091130svn2528 +- fix texi, include user-manual +- update to SVN 2528 +- remove net-http, guile-goosh and guile-gui + +* Wed Oct 07 2009 Tim Fenn - 0.6-4.20091007svn2404 +- update buildrequires +- use tetex-latex on EL builds +- update to SVN 2404 (fixes some licensing issues) + +* Mon Oct 05 2009 Tim Fenn - 0.6-3.20091005svn2400 +- update to SVN 2400 + +* Wed Sep 23 2009 Tim Fenn - 0.6-2.20090920svn2334 +- edit summary +- update upstream URL +- make create_server.py non-executable +- chmod src to 644 + +* Sun Sep 20 2009 Tim Fenn - 0.6-1.20090920svn2334 +- update to 0.6 +- get source from VCS system + +* Wed Mar 25 2009 Tim Fenn - 0.5.2-3 +- fix summary +- add additional licensing information +- split guile-extras into original tarballs + +* Sat Mar 14 2009 Tim Fenn - 0.5.2-2 +- fix for desktop-file-install +- gcc 4.4 patch + +* Mon Dec 15 2008 Tim Fenn - 0.5.2-1 +- update to 0.5.2 + +* Thu Nov 27 2008 Tim Fenn - 0.5-3 +- use consistent buildroot +- include gtkglext-devel, guile-lib, desktop-file-utils in buildrequires +- remove pyobject2 in buildrequires + +* Tue Nov 18 2008 Tim Fenn - 0.5-2 +- enable guile +- include extra guile modules + +* Mon Nov 17 2008 Tim Fenn - 0.5-1 +- initial build diff --git a/sources b/sources index e69de29..73137a9 100644 --- a/sources +++ b/sources @@ -0,0 +1,2 @@ +ecf43a60294f660946f5a14b8bf98769 coot-0.6.1-20100127svn2740.tar.gz +59df05751b1ab445a6517757a1ace302 coot-reference-structures.tar.gz diff --git a/svn-revision.cc b/svn-revision.cc new file mode 100644 index 0000000..432f2c5 --- /dev/null +++ b/svn-revision.cc @@ -0,0 +1,6 @@ +extern "C" { +int svn_revision() { + return 2740; +} +} +