Skip to content

Commit abc4ad5

Browse files
authored
Merge pull request #267 from proppy/xschem
misc: add xschem
2 parents 27bc2eb + a852977 commit abc4ad5

File tree

5 files changed

+102
-7
lines changed

5 files changed

+102
-7
lines changed

.github/workflows/Build.yml

+10
Original file line numberDiff line numberDiff line change
@@ -730,3 +730,13 @@ jobs:
730730
steps:
731731
- uses: actions/checkout@v3
732732
- uses: ./ci
733+
734+
#65
735+
xschem-linux:
736+
runs-on: "ubuntu-20.04"
737+
env:
738+
PACKAGE: "misc/xschem"
739+
OS_NAME: "linux"
740+
steps:
741+
- uses: actions/checkout@v3
742+
- uses: ./ci

misc/open_pdks/build.sh

+1-2
Original file line numberDiff line numberDiff line change
@@ -52,12 +52,11 @@ VARIANT=${VARIANT^^}
5252

5353
# --enable-sky130-pdk: point to current checkout
5454
# --disable-alpha-sky130: disable font library
55-
# --disable-xschem-sky130: disable xschem integration
5655
# --with-sky130-variants: use specified variant
5756
./configure --prefix=$PREFIX \
5857
--enable-sky130-pdk=$SRC_DIR/skywater-pdk/ \
58+
--enable-xschem-sky130=$SRC_DIR/xschem_sky130/ \
5959
--disable-alpha-sky130 \
60-
--disable-xschem-sky130 \
6160
--with-sky130-variants=$VARIANT
6261
make V=1
6362
make V=1 install

misc/open_pdks/meta.yaml

+7-5
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,18 @@ package:
88
source:
99
- git_url: https://github.com/RTimothyEdwards/open_pdks.git
1010
git_rev: master
11-
- url: https://github.com/google/skywater-pdk/archive/refs/heads/main.zip
11+
- git_url: https://github.com/google/skywater-pdk.git
1212
folder: skywater-pdk
13-
- url: https://github.com/google/skywater-pdk-libs-sky130_fd_sc_hd/archive/refs/heads/branch-0.0.2.zip
13+
- git_url: https://github.com/google/skywater-pdk-libs-sky130_fd_sc_hd.git
1414
folder: skywater-pdk/libraries/sky130_fd_sc_hd/latest
15-
- url: https://github.com/google/skywater-pdk-libs-sky130_fd_sc_hvl/archive/refs/heads/branch-0.0.3.zip
15+
- git_url: https://github.com/google/skywater-pdk-libs-sky130_fd_sc_hvl.git
1616
folder: skywater-pdk/libraries/sky130_fd_sc_hvl/latest
17-
- url: https://github.com/google/skywater-pdk-libs-sky130_fd_io/archive/refs/heads/branch-0.2.1.zip
17+
- git_url: https://github.com/google/skywater-pdk-libs-sky130_fd_io.git
1818
folder: skywater-pdk/libraries/sky130_fd_io/latest
19-
- url: https://github.com/google/skywater-pdk-libs-sky130_fd_pr/archive/refs/heads/branch-0.20.1.zip
19+
- git_url: https://github.com/google/skywater-pdk-libs-sky130_fd_pr.git
2020
folder: skywater-pdk/libraries/sky130_fd_pr/latest
21+
- git_url: https://github.com/StefanSchippers/xschem_sky130.git
22+
folder: xschem_sky130
2123
- url: https://files.pythonhosted.org/packages/07/1f/3d9ae865addc9ef6cb7b102d7d93e227c46b6e5e94db345cae2a30944efa/dataclasses_json-0.5.6-py3-none-any.whl
2224
sha256: 1d7f3a284a49d350ddbabde0e7d0c5ffa34a144aaf1bcb5b9f2c87673ff0c76e
2325

misc/xschem/build.sh

+23
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
#!/bin/bash
2+
3+
set -e
4+
set -x
5+
6+
# Identify OS
7+
UNAME_OUT="$(uname -s)"
8+
case "${UNAME_OUT}" in
9+
Linux*) OS=Linux;;
10+
*) OS="${UNAME_OUT}"
11+
echo "Unknown OS: ${OS}"
12+
exit;;
13+
esac
14+
15+
cd $SRC_DIR/xpm
16+
./configure --prefix="${PREFIX}" --without-localedir
17+
make V=1 -j$CPU_COUNT
18+
make V=1 install
19+
20+
cd $SRC_DIR
21+
./configure --prefix="${PREFIX}" --prefix/libs/script/tcl="${PREFIX}" --prefix/libs/gui/xpm="${PREFIX}"
22+
make V=1 -j$CPU_COUNT
23+
make V=1 install

misc/xschem/meta.yaml

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
# Use `conda-build-prepare` before building for a better version string.
2+
{% set version = '%s_%04i_%s'|format(GIT_DESCRIBE_TAG, GIT_DESCRIBE_NUMBER|int, GIT_DESCRIBE_HASH or 'gUNKNOWN') %}
3+
{% set xpm_version = '3.5.14' %}
4+
{% set xpm_md5 = 'c308d303ed5d369a8c65b09f83a2f86b' %}
5+
6+
package:
7+
name: xschem
8+
version: {{ version }}
9+
10+
source:
11+
- git_url: https://github.com/StefanSchippers/xschem.git
12+
git_rev: master
13+
- url: https://www.x.org/releases/individual/lib/libXpm-{{ xpm_version }}.tar.gz
14+
md5: {{ xpm_md5 }}
15+
folder: xpm
16+
17+
build:
18+
# number: 201803050325
19+
number: {{ environ.get('DATE_NUM') }}
20+
# string: 20180305_0325
21+
string: {{ environ.get('DATE_STR') }}
22+
script_env:
23+
- CI
24+
- CONDA_OUT
25+
- TEST_PACKAGE
26+
27+
requirements:
28+
build:
29+
- autoconf
30+
- automake
31+
- make
32+
- bison
33+
- flex
34+
- {{ compiler('c') }}
35+
- {{ cdt('xorg-x11-proto-devel') }} # [linux]
36+
- {{ cdt('libx11-devel') }} # [linux]
37+
- {{ cdt('libxau-devel') }} # [linux]
38+
- {{ cdt('libxrender-devel') }} # [linux]
39+
- {{ cdt('libxt-devel') }} # [linux]
40+
- {{ cdt('libsm-devel') }} # [linux]
41+
- {{ cdt('libice-devel') }} # [linux]
42+
- {{ cdt('libxext-devel') }} # [linux]
43+
- {{ cdt('libxcb') }} # [linux]
44+
host:
45+
- tk
46+
- cairo
47+
48+
test:
49+
commands:
50+
- xschem -v
51+
52+
about:
53+
home: http://repo.hu/projects/xschem/index.html
54+
license: GPL-2.0-or-later
55+
license_family: GPL
56+
license_file: LICENSE
57+
summary: 'Schematic capture and netlisting EDA tool.'
58+
description: |
59+
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.
60+
doc_url: http://repo.hu/projects/xschem/xschem_man/xschem_man.html
61+
dev_url: https://github.com/StefanSchippers/xschem

0 commit comments

Comments
 (0)