Sophie

Sophie

distrib > Mandriva > 10.2 > x86_64 > by-pkgid > 025d85192fefd8ea5b672a1cf88e56e5 > files > 3

gnucap-0.34-1mdk.src.rpm

%define name    gnucap
%define version 0.34
%define release 1mdk

Name:           %{name}
Version:        %{version}
Release:        %{release}
Summary:        A general purpose circuit simulator
Source0:        %{name}-%{version}.tar.bz2
Patch0:		%{name}.diff.bz2
License:        GPL
Group:          Development/Other
Url:            http://packages.debian.org/testing/electronics/gnucap
BuildRoot:      %{_tmppath}/%{name}-%{version}-%{release}-buildroot
BuildRequires:	readline-devel

%description
GNUCAP is a general purpose circuit simulator. It performs nonlinear dc and 
transient analyses, Fourier analysis, and ac analysis linearized at an 
operating point. It is fully interactive and command driven. It can also be 
run in batch mode or as a server. The output is produced as it simulates. 
Spice compatible models for the MOSFET (level 1,2,3) and diode are included 
in this release. 

%prep
%setup -q
%patch0 -p1
%build

# yeah, the buildsystem is screwed on 64bits so "Do it yourself".
pushd ibis
mkdir -p O
cat Make1 Make2.g++ Make3 Make.depend > O/Makefile
perl -pi -e "s|CCFLAGS =.*|CCFLAGS = $RPM_OPT_FLAGS \\\\|" O/Makefile
popd

pushd modelgen
mkdir -p O
cat Make1 Make2.g++ Make3 Make.depend >O/Makefile
perl -pi -e "s|CCFLAGS =.*|CCFLAGS = $RPM_OPT_FLAGS \\\\|" O/Makefile
popd

pushd src
rm -f gnucap-modelgen
ln -s ../modelgen/O/gnucap-modelgen .
mkdir -p O
echo "CCFLAGS = $RPM_OPT_FLAGS -DHAS_READLINE -DUNIX -DNDEBUG -I.. -I. -fno-exceptions -W" >Make.ccflags
echo "LIBS = -lreadline -ltermcap" > Make.libs
cd O; rm -f gnucap-modelgen; ln -s ../../modelgen/O/gnucap-modelgen gnucap-modelgen; cd ..

cat <<CAT_EOF >Make.sys
#------------------------------------------------------------------------
VPATH = .:..
CCC = g++

LDFLAGS =

.SUFFIXES : .o .cc
.cc.o:; \$(CCC) \$(CCFLAGS) -c \$<
#------------------------------------------------------------------------
\$(TARGET): \$(OBJS)
	rm -f \$@
	\$(CCC) \$(CCFLAGS) \$(OBJS) -o \$@ \$(LIBS) \$(LDFLAGS)
#------------------------------------------------------------------------
CAT_EOF

cat Make1 Make.ccflags Make.libs Make.sys Make3 Make.depend >O/Makefile

popd

pushd ibis/O
%make 
popd
pushd modelgen/O
%make 
popd
pushd src/O
%make
popd
pushd man
%make html
popd

%install
rm -rf $RPM_BUILD_ROOT

mkdir -p $RPM_BUILD_ROOT%{_bindir} $RPM_BUILD_ROOT%{_mandir}/man1
install -s src/O/gnucap $RPM_BUILD_ROOT%{_bindir}
install -s modelgen/O/gnucap-modelgen $RPM_BUILD_ROOT%{_bindir}
install -s ibis/O/gnucap-ibis $RPM_BUILD_ROOT%{_bindir}
mv doc/acs-tutorial ./%{name}-tutorial
mv doc/COPYING ./COPYING
mv doc/history ./history
mv doc/whatisit ./whatisit
mv doc/relnotes.* ./
install -s doc/gnucap.1 $RPM_BUILD_ROOT%{_mandir}/man1/
install -s doc/gnucap-ibis.1 $RPM_BUILD_ROOT%{_mandir}/man1/


%clean
rm -rf $RPM_BUILD_ROOT

%files
%defattr(-,root,root)
%doc man/html %{name}-tutorial COPYING history whatisit relnotes.*
%{_bindir}/*
%{_mandir}/man1/*

%changelog
* Sun Feb 06 2005 Couriousous <couriousous@mandrake.org> 0.34-1mdk
- First Mandrakelinux release