academic/xschem: Added (schematic capture program).

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
A. Tomasini 2023-11-20 20:34:50 +07:00 committed by Willy Sudiarto Raharjo
parent 434861ec9f
commit 71c158e0bb
8 changed files with 190 additions and 0 deletions

18
academic/xschem/README Normal file
View file

@ -0,0 +1,18 @@
Xschem is a schematic capture program, it allows creation of
hierarchical representation of circuits with a top down approach . By
focusing on interfaces, hierarchy and instance properties a complex
system can be described in terms of simpler building blocks. A VHDL
or Verilog or Spice netlist can be generated from the drawn schematic,
allowing the simulation of the circuit. Key feature of the program is
its drawing engine written in C and using directly the Xlib drawing
primitives; this gives very good speed performance, even on very big
circuits. The user interface is built with the Tcl-Tk toolkit, tcl is
also the extension language used. - hierarchical schematic drawings,
no limits on size - any object in the schematic can have any sort of
properties (generics in VHDL, parameters in Spice or Verilog) - new
Spice/Verilog primitives can be created, and the netlist format can
be defined by the user -tcl extension language allows the creation
of scripts; any user command in the drawing window has an associated
tcl comand - VHDL / Verilog / Spice netlist, ready for simulation -
Behavioral VHDL / Verilog code can be embedded as one of the properties
of the schematic block,

View file

@ -0,0 +1,4 @@
if [ -x /usr/bin/update-desktop-database ]; then
/usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
fi

View file

@ -0,0 +1,19 @@
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.
# Line up the first '|' above the ':' following the base package name, and
# the '|' on the right side marks the last column you can put a character in.
# You must make exactly 11 lines for the formatting to be correct. It's also
# customary to leave one space after the ':' except on otherwise blank lines.
|-----handy-ruler------------------------------------------------------|
xschem: xschem (schematic capture program)
xschem:
xschem: It support various simulators, build it waveform viewer and it can
xschem: connect with other waveform viewer like gaw and BeSpice
xschem:
xschem:
xschem:
xschem:
xschem:
xschem:
xschem:

View file

@ -0,0 +1,118 @@
#!/bin/bash
# Slackware build script for xschem
# Copyright 2023 Alfredo USA
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS 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 AUTHOR 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.
cd $(dirname $0) ; CWD=$(pwd)
PRGNAM=xschem
VERSION=${VERSION:-3.4.4}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
PKGTYPE=${PKGTYPE:-tgz}
if [ -z "$ARCH" ]; then
case "$( uname -m )" in
i?86) ARCH=i586 ;;
arm*) ARCH=arm ;;
*) ARCH=$( uname -m ) ;;
esac
fi
if [ ! -z "${PRINT_PACKAGE_NAME}" ]; then
echo "$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE"
exit 0
fi
TMP=${TMP:-/tmp/SBo}
PKG=$TMP/package-$PRGNAM
OUTPUT=${OUTPUT:-/tmp}
if [ "$ARCH" = "i586" ]; then
SLKCFLAGS="-O2 -march=i586 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "i686" ]; then
SLKCFLAGS="-O2 -march=i686 -mtune=i686"
LIBDIRSUFFIX=""
elif [ "$ARCH" = "x86_64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
elif [ "$ARCH" = "aarch64" ]; then
SLKCFLAGS="-O2 -fPIC"
LIBDIRSUFFIX="64"
else
SLKCFLAGS="-O2"
LIBDIRSUFFIX=""
fi
set -e
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
cd $TMP
rm -rf $PRGNAM-$VERSION
tar xvf $CWD/$PRGNAM-$VERSION.tar.gz
cd $PRGNAM-$VERSION
chown -R root:root .
find -L . \
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
CFLAGS="$SLKCFLAGS" \
CXXFLAGS="$SLKCFLAGS" \
./configure \
--prefix=/usr \
make install PREFIX=/usr DESTDIR=$PKG
find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
| cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
PKGDOC=$PKG/usr/doc/$PRGNAM-$VERSION
mkdir -p $PKGDOC
cat $CWD/$PRGNAM.SlackBuild > $PKGDOC/$PRGNAM.SlackBuild
mkdir -p $PKG/install
cat $CWD/doinst.sh > $PKG/install/doinst.sh
cat $CWD/slack-desc > $PKG/install/slack-desc
cd $PKG
printf "\033[32m remane usr/share/doc/${PRGNAM} usr/share/doc/$PRGNAM-$VERSION\033[0m\n"
mv usr/share/doc/${PRGNAM} usr/doc/$PRGNAM-$VERSION
rm -rf $PKG/usr/share/doc
printf "\033[32m create desktop and icons\033[0m\n"
mkdir -p usr/share/applications
mkdir -p usr/share/pixmaps/xschem/
cp $CWD/${PRGNAM}.desktop usr/share/applications/
cp $CWD/${PRGNAM}.png usr/share/pixmaps/xschem/
# compress the manual
printf "\033[32mcompress manual in ${PKG}/usr/share/doc/share/man\033[0m\n"
find usr/share/man -name "*.[12345678n]" -exec gzip {} \;
mv $PKG/usr/share/man $PKG/usr/
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.$PKGTYPE

View file

@ -0,0 +1,11 @@
[Desktop Entry]
Exec=/usr/bin/xschem
InitialPreference=2
MimeType=application/xscheme;
Name=xscheme
Comment=Schematic capture
Icon=/usr/share/pixmaps/xschem/xschem.png
Terminal=false
Type=Application
Categories=Graphics;
Keywords=CAD;simualtion;design;drawing;

View file

@ -0,0 +1,10 @@
#FIG 3.2 Produced by xfig version 3.2.8b
Landscape
Center
Inches
Letter
100.00
Single
-2
1200 2
4 0 4 50 -1 18 16 0.0000 4 210 1185 225 600 XSCHEM\001

View file

@ -0,0 +1,10 @@
PRGNAM="xschem"
VERSION="3.4.4"
HOMEPAGE="https://xschem.sourceforge.io/stefan/index.html"
DOWNLOAD="https://sourceforge.net/projects/xschem/files/xschem-3.4.4.tar.gz"
MD5SUM="d9dbdce18579fb6dc4c08ac942dd8001"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""
MAINTAINER="A. Tomasini"
EMAIL="alto dot tom at gmail dot com"

BIN
academic/xschem/xschem.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 211 B