coriolis/bootstrap/coriolis2.spec.in

203 lines
6.2 KiB
Plaintext
Raw Normal View History

2010-05-17 11:21:50 -05:00
%define coriolisVersion 1.0
%define coriolisTop %{_prefix}
2010-05-17 11:21:50 -05:00
%define svntag @svntag@
%define with_binarytar %{?_with_binarytar:1}%{!?_with_binarytar:0}
2010-05-22 18:18:32 -05:00
%define python_sitedir %{_lib}/%(python -c '
2010-05-22 17:24:55 -05:00
import os.path
import distutils.sysconfig
2010-05-22 17:54:33 -05:00
pathes = distutils.sysconfig.get_python_lib().split("/")
2010-05-22 17:24:55 -05:00
print os.path.join ( pathes[-2], pathes[-1] )
2010-05-22 17:54:33 -05:00
')
%if 0%{?rhel} > 5 || 0%{?fedora} > 10
%define qt4 qt
%else
%define qt4 qt4
%endif
2010-05-17 11:21:50 -05:00
Name: coriolis2
Summary: Coriolis 2 VLSI CAD Sytem
Version: %{coriolisVersion}.%{svntag}
Release: 1%{dist}
License: BSD/LGPL/GPL
2010-05-17 11:21:50 -05:00
Group: Applications/Engineering
Source: %{name}-%{version}.tar.bz2
URL: http://www-asim.lip6.fr/
Packager: Jean-Paul Chaput <Jean-Paul.Chaput@lip6.fr>
Requires(post): ldconfig
Requires: boost >= 1.33.1
Requires: %{qt4} >= 4.5.0
2010-05-17 11:21:50 -05:00
BuildRequires: boost-devel >= 1.33.1
BuildRequires: %{qt4}-devel >= 4.5.0
2010-05-17 11:21:50 -05:00
BuildRoot: %{_tmppath}/root-%{name}
%description
Coriolis is the new CAD tool suite intended to replace the
physical backend flow of Alliance.
The Knik global router makes use of FLUTE, which is redistributed
under is own license. FLUTE is copyrighted by Dr. Chris C. N. Chu
from the Iowa State University <http://home.eng.iastate.edu/~cnchu>.
%package devel
2010-05-17 18:11:07 -05:00
Summary: Coriolis 2 VLSI CAD Sytem - Development
Group: Applications/Engineering
Requires: %{name} = %{version}-%{release}
Requires: %{qt4}-devel >= 4.5.0
%description devel
Development files for the Coriolis 2 package.
%prep
%setup
%build
if [ -d %{buildroot} ]; then rm -r %{buildroot}; fi
VLSISAPD_TOP=%{coriolisTop}; export VLSISAPD_TOP
CORIOLIS_TOP=%{coriolisTop}; export CORIOLIS_TOP
# Do build & install in one step, except for documentation.
2010-05-18 10:18:56 -05:00
tools="vlsisapd hurricane crlcore knik katabatic kite equinox solstice unicorn"
for tool in $tools; do
%__mkdir_p build/$tool
pushd build/$tool;
2010-05-25 15:38:07 -05:00
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D BUILD_DOC:STRING=OFF \
-D CMAKE_INSTALL_PREFIX:STRING=%{coriolisTop} \
-D DESTDIR:STRING=%{buildroot} \
%ifarch x86_64
-D LIB_SUFFIX:STRING=64 \
%endif
../../$tool
make DESTDIR=%{buildroot} %{_smp_mflags} install
popd
done
%install
VLSISAPD_TOP=%{coriolisTop}; export VLSISAPD_TOP
CORIOLIS_TOP=%{coriolisTop}; export CORIOLIS_TOP
# Install & build documentation, in -j1.
tools="vlsisapd hurricane crlcore knik katabatic kite equinox solstice unicorn"
for tool in $tools; do
pushd build/$tool;
2010-05-25 15:38:07 -05:00
makeArgs=""
cmakeArgs=""
2010-05-25 15:38:07 -05:00
if [ "$tool" = "crlcore" ]; then
2010-05-26 17:24:03 -05:00
makeArgs="dvi safepdf html"
2010-05-25 15:38:07 -05:00
cmakeArgs="-D BUILD_DOC:STRING=ON"
else
cmakeArgs="-D BUILD_DOC:STRING=OFF"
2010-05-25 15:38:07 -05:00
fi
cmake -D CMAKE_BUILD_TYPE:STRING=RELEASE \
-D BUILD_SHARED_LIBS:STRING=ON \
-D CMAKE_INSTALL_PREFIX:STRING=%{coriolisTop} \
2010-05-22 10:27:37 -05:00
-D DESTDIR:STRING=%{buildroot} \
2010-05-17 18:20:40 -05:00
%ifarch x86_64
2010-05-17 18:28:50 -05:00
-D LIB_SUFFIX:STRING=64 \
2010-05-17 18:20:40 -05:00
%endif
2010-05-25 15:38:07 -05:00
${cmakeArgs} \
../../$tool
make DESTDIR=%{buildroot} -j1 ${makeArgs} install
popd
done
%__rm -rf %{buildroot}%{coriolisTop}/share/doc/coriolis2
# Removing undistributed binaries.
%__rm -f %{buildroot}%{coriolisTop}/bin/{cx2y,kite-text}
# %{__mkdir} -p %{buildroot}%{_sysconfdir}/ld.so.conf.d/
# cat > %{buildroot}%{_sysconfdir}/ld.so.conf.d/%{name}.conf << EOF
# Coriolis 2 VLSI design system
#%{coriolisTop}/%{_lib}
#%{coriolisTop}/%{_lib}/python
#EOF
#%if %{with_binarytar}
# cd %{buildroot}%{coriolisTop}
# tar --exclude "*/cmake_modules*" \
# -jcf %{_sourcedir}/%{name}-binary-%{version}-%{release}.%{_arch}.tar.bz2 \
# bin %{_lib} share
#%endif
%clean
if [ -d %{buildroot} ]; then rm -r %{buildroot}; fi
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%files
%defattr(-,root,root,-)
#%doc %{_docdir}/coriolis2/README.*
2010-05-26 17:24:03 -05:00
%doc build/crlcore/doc/README.{tex,dvi,pdf} build/crlcore/doc/README
%dir %{_sysconfdir}/coriolis2
%dir %{coriolisTop}/share/coriolis2/flute-2.4
%dir %{coriolisTop}/bin
2010-05-17 18:11:07 -05:00
%dir %{coriolisTop}/%{_lib}
2010-05-22 17:24:55 -05:00
%dir %{coriolisTop}/%{python_sitedir}
%{coriolisTop}/bin/*
2010-05-17 18:11:07 -05:00
%{coriolisTop}/%{_lib}/*.so
2010-05-22 17:24:55 -05:00
%{coriolisTop}/%{python_sitedir}/*.so
#%config(noreplace) %{_sysconfdir}/ld.so.conf.d/*
%config(noreplace) %{_sysconfdir}/coriolis2/*.xml
%config(noreplace) %{coriolisTop}/share/coriolis2/flute-2.4/*.dat
%files devel
%defattr(-,root,root,-)
%dir %{coriolisTop}/share/cmake/Modules
%dir %{coriolisTop}/include
2010-05-18 10:18:56 -05:00
%dir %{coriolisTop}/include/vlsisapd
%dir %{coriolisTop}/include/vlsisapd/agds
%dir %{coriolisTop}/include/vlsisapd/cif
#%dir %{coriolisTop}/include/vlsisapd/dtr
#%dir %{coriolisTop}/include/vlsisapd/openChams
%dir %{coriolisTop}/include/coriolis2/hurricane
%dir %{coriolisTop}/include/coriolis2/hurricane/viewer
%dir %{coriolisTop}/include/coriolis2/hurricane/isobar
%dir %{coriolisTop}/include/coriolis2
%dir %{coriolisTop}/include/coriolis2/crlcore
%dir %{coriolisTop}/include/coriolis2/knik
%dir %{coriolisTop}/include/coriolis2/katabatic
%dir %{coriolisTop}/include/coriolis2/kite
%dir %{coriolisTop}/include/coriolis2/equinox
%dir %{coriolisTop}/include/coriolis2/solstice
%{coriolisTop}/share/cmake/Modules/*.cmake
2010-05-18 10:18:56 -05:00
%{coriolisTop}/include/vlsisapd/agds/*.h
%{coriolisTop}/include/vlsisapd/cif/*.h
#%{coriolisTop}/include/vlsisapd/dtr/*.h
#%{coriolisTop}/include/vlsisapd/openChams/*.h
%{coriolisTop}/include/coriolis2/hurricane/*.h
%{coriolisTop}/include/coriolis2/hurricane/viewer/*.h
%{coriolisTop}/include/coriolis2/hurricane/isobar/*.h
%{coriolisTop}/include/coriolis2/crlcore/*.h
%{coriolisTop}/include/coriolis2/knik/*.h
%{coriolisTop}/include/coriolis2/katabatic/*.h
%{coriolisTop}/include/coriolis2/kite/*.h
%{coriolisTop}/include/coriolis2/equinox/*.h
%{coriolisTop}/include/coriolis2/solstice/*.h
%changelog
* Sun May 16 2010 Jean-Paul.Chaput <Jean-Paul.Chaput@lip6.fr>
- Initial packaging for svn release 1322 (alpha stage).