release 23

This commit is contained in:
Chitlesh GOORAH 2011-12-03 18:29:13 +01:00
parent 467d8e4c3b
commit 546d4583f9
3 changed files with 91 additions and 28 deletions

2
.gitignore vendored
View File

@ -1,2 +1,4 @@
ngspice-21.pdf ngspice-21.pdf
ngspice-rework-20.cvs20100719.tar.bz2 ngspice-rework-20.cvs20100719.tar.bz2
/ngspice-23.tar.gz
/ngspice23-manual.pdf

View File

@ -1,33 +1,50 @@
# Features in Fedora/Free Electronic Lab
# What else does this build do aside compiling ngspice ?
# - Ensures interoperability with xcircuit via Tcl
# - Ensures interoperability with mot-adms
# - Provides tclspice capabilities
# Chitlesh Goorah
# #
## To download development trunk ## To download development trunk
# #
# cvs -d:pserver:anonymous@ngspice.cvs.sourceforge.net:/cvsroot/ngspice login # cvs -d:pserver:anonymous@ngspice.cvs.sourceforge.net:/cvsroot/ngspice login
# cvs -z3 -d:pserver:anonymous@ngspice.cvs.sourceforge.net:/cvsroot/ngspice co -P ngspice # cvs -z3 -d:pserver:anonymous@ngspice.cvs.sourceforge.net:/cvsroot/ngspice export -DNOW ngspice
# tar cjf ~/rpmbuild/SOURCES/ngspice-rework-20.cvs`date '+%Y%m%d'`.tar.bz2 ngspice # tar cjf ~/rpmbuild/SOURCES/ngspice-rework-23.`date '+%Y%m%d'`cvs.tar.bz2 ngspice
# Toggle the following declaration when using version controlled snapshots
%define devel 0
Name: ngspice Name: ngspice
Version: 21 Version: 23
Release: 3.cvs20100719%{?dist} %if %{?devel}
%define snap .20111129cvs
%endif
Release: 1%{?snap}%{?dist}
Summary: A mixed level/signal circuit simulator Summary: A mixed level/signal circuit simulator
License: BSD License: BSD
Group: Applications/Engineering Group: Applications/Engineering
URL: http://ngspice.sourceforge.net URL: http://ngspice.sourceforge.net
#Source0: http://downloads.sourceforge.net/sourceforge/%{name}/ngspice%{version}_100620.zip %if %{?devel}
Source0: ngspice-rework-20.cvs20100719.tar.bz2 Source0: ngspice-rework-%{version}%{snap}.tar.bz2
Source1: ngspice-21.pdf %else
Source0: https://downloads.sourceforge.net/project/ngspice/ng-spice-rework/%{version}/ngspice-%{version}.tar.gz
Source1: https://downloads.sourceforge.net/project/ngspice/ng-spice-rework/%{version}/ngspice%{version}-manual.pdf
%endif
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
# Ensured interoperability with xcircuit via Tcl
BuildRequires: readline-devel, libXext-devel, libpng-devel, libICE-devel BuildRequires: readline-devel, libXext-devel, libpng-devel, libICE-devel
BuildRequires: libXaw-devel, mesa-libGL-devel, libXt-devel, automake, libtool BuildRequires: libXaw-devel, mesa-libGL-devel, libXt-devel, automake, libtool
%if %{?devel}
BuildRequires: lyx BuildRequires: lyx
%endif
BuildRequires: bison BuildRequires: bison
BuildRequires: byacc BuildRequires: byacc
BuildRequires: flex ImageMagick BuildRequires: flex ImageMagick
BuildRequires: mot-adms
Obsoletes: ngspice-doc < 20-4.cvs20100619 Obsoletes: ngspice-doc < 20-4.cvs20100619
Provides: ngspice-doc = %{version}-%{release} Provides: ngspice-doc = %{version}-%{release}
@ -51,7 +68,7 @@ then some tweak is necessary merge it with spice3f5). Xspice provides a
codemodel interface and an event-driven simulation algorithm. Users can codemodel interface and an event-driven simulation algorithm. Users can
develop their own models for devices using the codemodel interface. develop their own models for devices using the codemodel interface.
It could be used for VLSI simulations as well. It can be used for VLSI simulations as well.
%package -n tclspice %package -n tclspice
@ -66,13 +83,17 @@ the Tcl/Tk scripting language. The project is based upon the NG-Spice source
code base with many improvements. code base with many improvements.
%prep %prep
%if %{?devel}
%setup -q -n ngspice %setup -q -n ngspice
cd ng-spice-rework cd ng-spice-rework
%else
%setup -q
%endif
# make sure the examples are UTF-8... # make sure the examples are UTF-8...
for nonUTF8 in examples/tclspice/tcl-testbench4/selectfromlist.tcl \ for nonUTF8 in examples/tclspice/tcl-testbench4/selectfromlist.tcl \
examples/tclspice/tcl-testbench1/testCapa.cir \ examples/tclspice/tcl-testbench1/testCapa.cir \
examples/tclspice/tcl-testbench1/capa.cir ; do examples/tclspice/tcl-testbench1/capa.cir ChangeLog; do
%{_bindir}/iconv -f ISO-8859-1 -t utf-8 $nonUTF8 > $nonUTF8.conv %{_bindir}/iconv -f ISO-8859-1 -t utf-8 $nonUTF8 > $nonUTF8.conv
%{__mv} -f $nonUTF8.conv $nonUTF8 %{__mv} -f $nonUTF8.conv $nonUTF8
done done
@ -81,11 +102,12 @@ done
find examples/ -type f -name ".cvsignore" -exec rm -rf {} ';' find examples/ -type f -name ".cvsignore" -exec rm -rf {} ';'
find src/ -type f -name "*.c" -exec chmod -x {} ';' find src/ -type f -name "*.c" -exec chmod -x {} ';'
find src/ -type f -name "*.h" -exec chmod -x {} ';' find src/ -type f -name "*.h" -exec chmod -x {} ';'
find src/ -type f -name "*.l" -exec chmod -x {} ';'
find src/ -type f -name "*.y" -exec chmod -x {} ';'
sed -i '15,/ /i\#include <ftedev.h>;' src/include/tclspice.h
%ifarch x86_64 sparc64 ppc64 amd64 %ifarch x86_64 sparc64 ppc64 amd64
sed -i "s|@XSPICEINIT@ codemodel @prefix@/lib|@XSPICEINIT@ codemodel %{_libdir}|" \ sed -i "s|@XSPICEINIT@ codemodel @prefix@/@libname@|@XSPICEINIT@ codemodel %{_libdir}|" \
src/spinit.in src/spinit.in
%endif %endif
@ -100,21 +122,23 @@ sed -i \
"s|spice::codemodel ../../src/xspice/icm/spice2poly|spice::codemodel %{_libdir}/tclspice/spice|" \ "s|spice::codemodel ../../src/xspice/icm/spice2poly|spice::codemodel %{_libdir}/tclspice/spice|" \
examples/tclspice/tcl-testbench4/tcl-testbench4.tcl examples/tclspice/tcl-testbench4/tcl-testbench4.tcl
#{__libtoolize} --force --copy # Fixed minor CVS build
#{__aclocal} sed -i "s|AM_CPPFLAGS =|AM_CPPFLAGS = -I\$(top_srcdir)/src/maths/ni |" src/spicelib/analysis/Makefile.am
#{__automake} --add-missing
#{__autoconf} ./autogen.sh --adms
./autogen.sh
chmod +x configure
%build %build
%if %{?devel}
# ---- Manual ---------------------------------------------------------------- # ---- Manual ----------------------------------------------------------------
#cd ng-spice-manuals cd ng-spice-manuals
#autoreconf -Wno-portability --install autoreconf -Wno-portability --install
#./configure ; make ./configure ; make
#cd .. cd ..
cd ng-spice-rework cd ng-spice-rework
cp -p %{SOURCE1} . %endif
# ---- Tclspice ---------------------------------------------------------------- # ---- Tclspice ----------------------------------------------------------------
# Adding BLT support # Adding BLT support
@ -128,10 +152,13 @@ export CFLAGS="%{optflags} -I%{_includedir}/blt"
cd tclspice cd tclspice
sed -i "s|\#define NGSPICEDATADIR \"\`echo \$dprefix/share/ngspice\`\"|\#define NGSPICEDATADIR \"\`echo %{_libdir}/tclspice\`\"|" configure* sed -i "s|\#define NGSPICEDATADIR \"\`echo \$dprefix/share/ngspice\`\"|\#define NGSPICEDATADIR \"\`echo %{_libdir}/tclspice\`\"|" configure*
# fix ng-spice-manuals directory location # fix ng-spice-manuals directory location
#sed -i 's|../ng-spice-manuals|../../ng-spice-manuals|g' manual/Makefile.am %if %{?devel}
sed -i 's|../ng-spice-manuals|../../ng-spice-manuals|g' manual/Makefile.am
%endif
%configure \ %configure \
--disable-xgraph \ --disable-xgraph \
--enable-adms \
--enable-xspice \ --enable-xspice \
--enable-maintainer-mode \ --enable-maintainer-mode \
--enable-dependency-tracking \ --enable-dependency-tracking \
@ -140,11 +167,13 @@ sed -i "s|\#define NGSPICEDATADIR \"\`echo \$dprefix/share/ngspice\`\"|\#define
--enable-newpred \ --enable-newpred \
--enable-expdevices \ --enable-expdevices \
--enable-intnoise \ --enable-intnoise \
--enable-openmp \
--enable-predictor \ --enable-predictor \
--enable-numparam \ --enable-numparam \
--enable-dot-global \ --enable-dot-global \
--enable-shared \ --enable-shared \
--enable-ndev \ --enable-ndev \
--with-readline=yes \
%if 0%{?fedora} %if 0%{?fedora}
--with-tcl=%{_libdir}/tcl8.5/ \ --with-tcl=%{_libdir}/tcl8.5/ \
%else %else
@ -158,6 +187,7 @@ cd ..
%configure \ %configure \
--disable-xgraph \ --disable-xgraph \
--enable-adms \
--enable-xspice \ --enable-xspice \
--enable-maintainer-mode \ --enable-maintainer-mode \
--enable-dependency-tracking \ --enable-dependency-tracking \
@ -166,11 +196,13 @@ cd ..
--enable-newpred \ --enable-newpred \
--enable-expdevices \ --enable-expdevices \
--enable-intnoise \ --enable-intnoise \
--enable-openmp \
--enable-predictor \ --enable-predictor \
--enable-numparam \ --enable-numparam \
--enable-dot-global \ --enable-dot-global \
--enable-shared \ --enable-shared \
--enable-ndev \ --enable-ndev \
--with-readline=yes \
--libdir=%{_libdir} --libdir=%{_libdir}
%{__make} %{__make}
@ -178,7 +210,9 @@ cd ..
%install %install
%{__rm} -rf %{buildroot} %{__rm} -rf %{buildroot}
%if %{?devel}
cd ng-spice-rework cd ng-spice-rework
%endif
%{__make} INSTALL="install -p" install DESTDIR=%{buildroot} %{__make} INSTALL="install -p" install DESTDIR=%{buildroot}
@ -192,15 +226,22 @@ cd ..
%{__rm} -rf %{buildroot}%{_libdir}/tclspice/libspice.la %{__rm} -rf %{buildroot}%{_libdir}/tclspice/libspice.la
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
# ADMS support
cp -pr ./src/spicelib/devices/adms/ %{buildroot}%{_datadir}/%{name}
# Ensuring that all docs are under %%{_docdir}/%%{name}-%%{version}/ # Ensuring that all docs are under %%{_docdir}/%%{name}-%%{version}/
rm -rf %{buildroot}%{_docdir}/%{name}-%{version}/ rm -rf %{buildroot}%{_docdir}/%{name}-%{version}/
mkdir -p %{buildroot}%{_docdir}/%{name}-%{version}/ mkdir -p %{buildroot}%{_docdir}/%{name}-%{version}/
cp -pr examples/ %{buildroot}%{_docdir}/%{name}-%{version}/ cp -pr examples/ %{buildroot}%{_docdir}/%{name}-%{version}/
cp -p ngspice-21.pdf %{buildroot}%{_docdir}/%{name}-%{version}/%{name}-%{version}.pdf %if %{?devel}
cp -p ../ng-spice-manuals/manual.pdf %{buildroot}%{_docdir}/%{name}-%{version}/%{name}-%{version}.pdf
%else
cp -p %{SOURCE1} %{buildroot}%{_docdir}/%{name}-%{version}/%{name}-%{version}.pdf
%endif
rm -rf %{buildroot}%{_docdir}/%{name} rm -rf %{buildroot}%{_docdir}/%{name}
cp -pr Stuarts_Poly_Notes FAQ DEVICES ANALYSES %{buildroot}%{_docdir}/%{name}-%{version}/ cp -pr Stuarts_Poly_Notes FAQ DEVICES ANALYSES %{buildroot}%{_docdir}/%{name}-%{version}/
cp -pr AUTHORS COPYING README BUGS ChangeLog NEWS %{buildroot}%{_docdir}/%{name}-%{version}/ cp -pr AUTHORS COPYING README* BUGS ChangeLog NEWS %{buildroot}%{_docdir}/%{name}-%{version}/
# pull as debuginfo # pull as debuginfo
@ -210,7 +251,11 @@ chmod +x %{buildroot}%{_libdir}/tclspice/spice/*.cm
%{__rm} -rf %{buildroot}%{_datadir}/info/dir %{__rm} -rf %{buildroot}%{_datadir}/info/dir
%check %check
%if %{?devel}
cd ng-spice-rework/tests cd ng-spice-rework/tests
%else
cd tests
%endif
#make check #make check
@ -233,6 +278,22 @@ cd ng-spice-rework/tests
%changelog %changelog
* Tue Nov 29 2011 Chitlesh Goorah <chitlesh [AT] fedoraproject DOT org> 23-1
- New upstream sources with various bug fixes
- Upstream added #include <ftedev.h> to src/include/tclspice.h
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 22-6.cvs20101113
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
* Sat Nov 13 2010 Chitlesh Goorah <chitlesh [AT] fedoraproject DOT org> 21-5.cvs20101113
- new upstream sources with various bug fixes
* Sat Aug 21 2010 Chitlesh Goorah <chitlesh [AT] fedoraproject DOT org> 21-4.cvs20100821
- enabling adms support
* Sun Aug 01 2010 Chitlesh Goorah <chitlesh [AT] fedoraproject DOT org> 21-3.cvs20100719
- new fixes from development trunk
* Sun Jul 11 2010 Chitlesh Goorah <chitlesh [AT] fedoraproject DOT org> 21-2.cvs20100620 * Sun Jul 11 2010 Chitlesh Goorah <chitlesh [AT] fedoraproject DOT org> 21-2.cvs20100620
- added bison and byacc as BR - added bison and byacc as BR

View File

@ -1,2 +1,2 @@
95ee9f647e5c50fdcb2a9a26a519295b ngspice-21.pdf bc7faa7348e307145b3bb04ef70a87d2 ngspice-23.tar.gz
669587010b890413bf26e35cccd400d4 ngspice-rework-20.cvs20100719.tar.bz2 eb0d68eb463a41a0571757a00a5b9f9d ngspice23-manual.pdf