summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Mollier <etienne.mollier@mailoo.org>2021-02-03 16:37:21 +0100
committerÉtienne Mollier <etienne.mollier@mailoo.org>2021-02-03 16:37:21 +0100
commit4221e6aa6f9c46f29c013122644854af20d8aacf (patch)
tree8822313799508a85cef165bf07a1e0c941a3e0c9
Import sparskit_2.0.0-4.debian.tar.xz
[dgit import tarball sparskit 2.0.0-4 sparskit_2.0.0-4.debian.tar.xz]
-rw-r--r--changelog44
-rw-r--r--control43
-rw-r--r--copyright17
-rw-r--r--docs1
-rw-r--r--get-orig-source7
-rw-r--r--libsparskit-dev.install2
-rw-r--r--libsparskit2.0.install1
-rw-r--r--libsparskit2.0.lintian-overrides1
-rw-r--r--patches/50_all_changes.diff203
-rw-r--r--patches/gcc-10.patch37
-rw-r--r--patches/series3
-rw-r--r--patches/spelling.patch17
-rwxr-xr-xrules59
-rw-r--r--salsa-ci.yml4
-rw-r--r--source/format1
15 files changed, 440 insertions, 0 deletions
diff --git a/changelog b/changelog
new file mode 100644
index 0000000..1613075
--- /dev/null
+++ b/changelog
@@ -0,0 +1,44 @@
+sparskit (2.0.0-4) unstable; urgency=medium
+
+ * Team upload.
+ * Fix FTBFS with gcc-10. (Closes: #957828)
+ * Standards-Version: 4.5.1 (routine-update)
+ * debhelper-compat 13 (routine-update)
+ * Remove trailing whitespace in debian/rules (routine-update)
+ * Add salsa-ci file (routine-update)
+ * Rules-Requires-Root: no (routine-update)
+ * Use versioned copyright format URI.
+ * Use secure URI in Homepage field.
+ * Use canonical URL in Vcs-Browser.
+ * Restore a <Tab> instead of 8 spaces in d/rules.
+ * Restore a missing endif in d/rules dh_auto_test target.
+ * Fix typo caught by lintian.
+ * Glue the License field in d/copyright.
+
+ -- Étienne Mollier <etienne.mollier@mailoo.org> Wed, 03 Feb 2021 16:37:21 +0100
+
+sparskit (2.0.0-3) unstable; urgency=medium
+
+ * Team upload.
+ * Moved packaging from SVN to Git
+ * cme fix dpkg-control
+ * debhelper 11
+ * d/rules: short dh
+ * Fix homepage
+
+ -- Andreas Tille <tille@debian.org> Mon, 29 Jan 2018 14:01:02 +0100
+
+sparskit (2.0.0-2) unstable; urgency=low
+
+ * Bump Standards-Version to 3.9.2 (no changes necessary)
+ * Bump compat level to 8
+ * Added vcs fields
+ * Updated email address
+
+ -- Dominique Belhachemi <domibel@debian.org> Wed, 21 Sep 2011 22:43:27 -0400
+
+sparskit (2.0.0-1) unstable; urgency=low
+
+ * Initial release (Closes: #498653)
+
+ -- Dominique Belhachemi <domibel@debian.org> Sat, 03 Apr 2010 10:18:28 -0400
diff --git a/control b/control
new file mode 100644
index 0000000..5a99e61
--- /dev/null
+++ b/control
@@ -0,0 +1,43 @@
+Source: sparskit
+Maintainer: Debian Science Team <debian-science-maintainers@lists.alioth.debian.org>
+Uploaders: Dominique Belhachemi <domibel@debian.org>
+Section: libs
+Priority: optional
+Build-Depends: debhelper-compat (= 13),
+ gfortran,
+ cmake,
+ liblapack-dev
+Standards-Version: 4.5.1
+Vcs-Browser: https://salsa.debian.org/science-team/sparskit
+Vcs-Git: https://salsa.debian.org/science-team/sparskit.git
+Homepage: https://www-users.cs.umn.edu/~saad/software/SPARSKIT/
+Rules-Requires-Root: no
+
+Package: libsparskit2.0
+Architecture: any
+Depends: ${shlibs:Depends},
+ ${misc:Depends}
+Description: basic tool-kit for sparse matrix computations - runtime
+ SPARSKIT a basic tool-kit for sparse matrix computations. Sparskit is a
+ general purpose FORTRAN-77 library for sparse matrix computations. It has
+ been gathered over several years and includes some of the most useful tools
+ for developing and implementing sparse matrix techniques, particularly for
+ iterative solvers. If you need a simple routine for doing a sparse matrix
+ operation (e.g., adding two sparse matrices, or reordering a sparse matrix)
+ it is likely to be available in SPARSKIT. SPARSKIT also contains most of
+ the iterative accelarators and a number of efficient preconditioners.
+
+Package: libsparskit-dev
+Architecture: any
+Section: libdevel
+Depends: libsparskit2.0 (= ${binary:Version}),
+ ${misc:Depends}
+Description: basic tool-kit for sparse matrix computations - devel
+ SPARSKIT a basic tool-kit for sparse matrix computations. Sparskit is a general
+ purpose FORTRAN-77 library for sparse matrix computations. It has been
+ gathered over several years and includes some of the most useful tools for
+ developing and implementing sparse matrix techniques, particularly for
+ iterative solvers. If you need a simple routine for doing a sparse matrix
+ operation (e.g., adding two sparse matrices, or reordering a sparse matrix) it
+ is likely to be available in SPARSKIT. SPARSKIT also contains most of the
+ iterative accelarators and a number of efficient preconditioners.
diff --git a/copyright b/copyright
new file mode 100644
index 0000000..af77065
--- /dev/null
+++ b/copyright
@@ -0,0 +1,17 @@
+Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
+Debianized-By: Dominique Belhachemi <domibel@debian.org>
+Debianized-Date: Thu, 11 Sep 2008 23:22:53 +0200
+Original-Source: http://www-users.cs.umn.edu/~saad/software/SPARSKIT/sparskit.html
+
+Files: *
+Copyright:
+ Copyright (C) 2005, the University of Minnesota,
+ Yousef Saad, saad AT cs dot umn dot edu
+License: LGPL-2.1
+ see `/usr/share/common-licenses/LGPL-2.1'
+
+Files: debian/*
+Copyright: Copyright 2008, Dominique Belhachemi <domibel@debian.org>
+License: GPL-2+
+ The Debian packaging is licensed under the LGPL-2.1,
+ see `/usr/share/common-licenses/LGPL-2.1'
diff --git a/docs b/docs
new file mode 100644
index 0000000..e845566
--- /dev/null
+++ b/docs
@@ -0,0 +1 @@
+README
diff --git a/get-orig-source b/get-orig-source
new file mode 100644
index 0000000..1d9bcb6
--- /dev/null
+++ b/get-orig-source
@@ -0,0 +1,7 @@
+wget http://www-users.cs.umn.edu/~saad/software/SPARSKIT/SPARSKIT2.tar.gz
+tar xvzf SPARSKIT2.tar.gz
+mv SPARSKIT2 sparskit-2.0.0
+tar cvzf sparskit_2.0.0.orig.tar.gz sparskit-2.0.0/
+rm SPARSKIT2.tar.gz
+
+
diff --git a/libsparskit-dev.install b/libsparskit-dev.install
new file mode 100644
index 0000000..e60284a
--- /dev/null
+++ b/libsparskit-dev.install
@@ -0,0 +1,2 @@
+usr/lib/libskit.a
+shared/usr/lib/libskit.so usr/lib/
diff --git a/libsparskit2.0.install b/libsparskit2.0.install
new file mode 100644
index 0000000..df97210
--- /dev/null
+++ b/libsparskit2.0.install
@@ -0,0 +1 @@
+shared/usr/lib/libskit.so.* usr/lib
diff --git a/libsparskit2.0.lintian-overrides b/libsparskit2.0.lintian-overrides
new file mode 100644
index 0000000..96437f7
--- /dev/null
+++ b/libsparskit2.0.lintian-overrides
@@ -0,0 +1 @@
+libsparskit2.0: package-name-doesnt-match-sonames libskit2.0
diff --git a/patches/50_all_changes.diff b/patches/50_all_changes.diff
new file mode 100644
index 0000000..53c5c3b
--- /dev/null
+++ b/patches/50_all_changes.diff
@@ -0,0 +1,203 @@
+Description: CMake'ing sparskit
+Author: Dominique Belhachemi <domibel@debian.org>
+Index: sparskit-2.0.0/BLASSM/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/BLASSM/CMakeLists.txt 2010-04-10 08:10:47.000000000 -0400
+@@ -0,0 +1,9 @@
++enable_language( Fortran )
++
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(mvec.ex rmatvec.f ../MATGEN/FDIF/functns.f)
++target_link_libraries (mvec.ex skit skit_helper blas)
++
++add_executable(tester.ex rmatvec.f ../MATGEN/FDIF/functns.f)
++target_link_libraries (tester.ex skit)
+Index: sparskit-2.0.0/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/CMakeLists.txt 2010-04-10 08:10:35.000000000 -0400
+@@ -0,0 +1,76 @@
++cmake_minimum_required(VERSION 2.6)
++
++# Input directories must have CMakeLists.txt.
++cmake_policy(SET CMP0014 NEW)
++
++
++project (sparskit)
++
++
++set(STATIC_LIBRARY_FLAGS "-rcv")
++set(CMAKE_Fortran_FLAGS " -g -ffixed-line-length-none -ffree-line-length-none")
++#set(CMAKE_Fortran_FLAGS " -c -g -Wall -ffixed-line-length-none -ffree-line-length-none")
++
++enable_language(Fortran)
++
++
++# Create a library called "skit".
++add_library (skit
++ BLASSM/blassm.f
++ BLASSM/matvec.f
++ FORMATS/formats.f
++ FORMATS/unary.f
++ INFO/infofun.f
++ INOUT/inout.f
++ ITSOL/ilut.f
++ ITSOL/iters.f
++ MATGEN/FDIF/genmat.f
++ MATGEN/FEM/elmtlib2.f
++ MATGEN/FEM/femgen.f
++ MATGEN/FEM/meshes.f
++ MATGEN/MISC/sobel.f
++ MATGEN/MISC/zlatev.f
++ ORDERINGS/ccn.f
++ ORDERINGS/color.f
++ ORDERINGS/dsepart.f
++)
++
++SET_TARGET_PROPERTIES(skit PROPERTIES
++ LINKER_LANGUAGE Fortran
++ SOVERSION 2.0
++ VERSION 2.0.0
++)
++
++install(TARGETS skit
++ RUNTIME DESTINATION bin COMPONENT RuntimeLibraries
++ LIBRARY DESTINATION lib COMPONENT RuntimeLibraries
++ ARCHIVE DESTINATION lib COMPONENT Development
++)
++
++
++OPTION(BUILD_TESTING "Enable this to perform testing of sparskit" ON)
++
++IF(BUILD_TESTING)
++ # non-library and unsupported objects
++ add_library (skit_helper
++ ITSOL/itaux.f
++ MATGEN/FDIF/functns.f
++ MATGEN/FEM/functns2.f
++ UNSUPP/BLAS1/blas1.f
++ UNSUPP/MATEXP/exppro.f
++ UNSUPP/MATEXP/phipro.f
++ UNSUPP/PLOTS/psgrd.f
++ UNSUPP/PLOTS/texgrid1.f
++ UNSUPP/PLOTS/texplt1.f
++ )
++ add_subdirectory (BLASSM)
++ add_subdirectory (FORMATS)
++ add_subdirectory (INFO)
++ add_subdirectory (INOUT)
++ add_subdirectory (ITSOL)
++ add_subdirectory (MATGEN/FDIF)
++ add_subdirectory (MATGEN/FEM)
++ add_subdirectory (MATGEN/MISC)
++ add_subdirectory (UNSUPP/MATEXP)
++ENDIF(BUILD_TESTING)
++
+Index: sparskit-2.0.0/FORMATS/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/FORMATS/CMakeLists.txt 2010-04-10 08:11:10.000000000 -0400
+@@ -0,0 +1,12 @@
++#enable_language( Fortran )
++
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(un.ex chkun.f ../MATGEN/FDIF/functns.f)
++target_link_libraries (un.ex skit)
++
++add_executable(chkfmt.ex chkfmt1.f ../MATGEN/FDIF/functns.f)
++target_link_libraries (chkfmt.ex skit)
++
++add_executable(rvbr.ex rvbr.f ../MATGEN/FDIF/functns.f)
++target_link_libraries (rvbr.ex skit)
+Index: sparskit-2.0.0/INFO/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/INFO/CMakeLists.txt 2010-04-10 08:11:15.000000000 -0400
+@@ -0,0 +1,4 @@
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(info1.ex rinfo1.f dinfo13.f)
++target_link_libraries (info1.ex skit)
+Index: sparskit-2.0.0/INOUT/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/INOUT/CMakeLists.txt 2010-04-10 08:10:41.000000000 -0400
+@@ -0,0 +1,10 @@
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(chk.ex chkio.f ../MATGEN/FDIF/functns.f)
++target_link_libraries (chk.ex skit)
++
++add_executable(hb2ps.ex hb2ps.f)
++target_link_libraries (hb2ps.ex skit)
++
++add_executable(hb2pic.ex hb2pic.f)
++target_link_libraries (hb2pic.ex skit)
+Index: sparskit-2.0.0/ITSOL/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/ITSOL/CMakeLists.txt 2010-04-10 08:09:48.000000000 -0400
+@@ -0,0 +1,11 @@
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(riters.ex riters.f iters.f ilut.f itaux.f ../UNSUPP/BLAS1/blas1.f)
++target_link_libraries (riters.ex skit)
++
++add_executable(rilut.ex rilut.f ilut.f iters.f itaux.f ../UNSUPP/BLAS1/blas1.f)
++target_link_libraries (rilut.ex skit)
++
++add_executable(riter2.ex riter2.f iters.f ilut.f itaux.f ../UNSUPP/BLAS1/blas1.f)
++target_link_libraries (riter2.ex skit)
++
+Index: sparskit-2.0.0/MATGEN/FDIF/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/MATGEN/FDIF/CMakeLists.txt 2010-04-10 08:11:05.000000000 -0400
+@@ -0,0 +1,7 @@
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(gen5.ex rgen5pt.f functns.f)
++target_link_libraries (gen5.ex skit)
++
++add_executable(genbl.ex rgenblk.f functns.f)
++target_link_libraries (genbl.ex skit)
+Index: sparskit-2.0.0/MATGEN/FEM/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/MATGEN/FEM/CMakeLists.txt 2010-04-10 08:10:58.000000000 -0400
+@@ -0,0 +1,4 @@
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(fem.ex convdif.f functns2.f ../../UNSUPP/PLOTS/psgrd.f )
++target_link_libraries (fem.ex skit)
+Index: sparskit-2.0.0/MATGEN/MISC/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/MATGEN/MISC/CMakeLists.txt 2010-04-10 08:10:52.000000000 -0400
+@@ -0,0 +1,11 @@
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(sobel.ex rsobel.f)
++target_link_libraries (sobel.ex skit)
++
++add_executable(zlatev.ex rzlatev.f)
++target_link_libraries (zlatev.ex skit)
++
++add_executable(markov.ex markov.f)
++target_link_libraries (markov.ex skit)
++
+Index: sparskit-2.0.0/UNSUPP/MATEXP/CMakeLists.txt
+===================================================================
+--- /dev/null 1970-01-01 00:00:00.000000000 +0000
++++ sparskit-2.0.0/UNSUPP/MATEXP/CMakeLists.txt 2010-04-10 08:11:21.000000000 -0400
+@@ -0,0 +1,7 @@
++set(CMAKE_Fortran_FLAGS "-g")
++
++add_executable(exp.ex rexp.f exppro.f)
++target_link_libraries (exp.ex skit)
++
++add_executable(phi.ex rphi.f phipro.f)
++target_link_libraries (phi.ex skit)
diff --git a/patches/gcc-10.patch b/patches/gcc-10.patch
new file mode 100644
index 0000000..42144ef
--- /dev/null
+++ b/patches/gcc-10.patch
@@ -0,0 +1,37 @@
+Description: fix ftbfs with gcc-10
+ This fixes the argument type mismatch in the csrcsc
+ call by introducing the one dimension vector iziama of type
+ real(8), instead of an integer(4) scalar, while trying to
+ maintain compatibility with Fortran 77.
+Author: Étienne Mollier <etienne.mollier@mailoo.org>
+Bug-Debian: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=957828
+Forwarded: saad *at* cs *dot* umn *dot* edu
+Last-Update: 2021-02-02
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- sparskit.orig/ORDERINGS/ccn.f
++++ sparskit/ORDERINGS/ccn.f
+@@ -90,7 +90,7 @@
+ c July 1992 - Update: March 1994
+ C-----------------------------------------------------------------------
+ integer izs(nw), lpw(n), nsbloc(0:nblcmx), ia(n+1), ja(*)
+- real*8 amat(*)
++ real*8 amat(*), iziama(1)
+ logical impr
+ character*6 chsubr
+ C-----------------------------------------------------------------------
+@@ -147,10 +147,12 @@
+ * ja, ia, izs(ilpw), izs(ilpw), job)
+ ipos = 1
+ c..........We sort columns inside JA.
+- call csrcsc(n, job, ipos, amat, ja, ia, izs(iamat),
++ iziama(1) = izs(iamat)
++ call csrcsc(n, job, ipos, amat, ja, ia, iziama,
+ * izs(ijat), izs(iiat))
+- call csrcsc(n, job, ipos, izs(iamat), izs(ijat), izs(iiat),
++ call csrcsc(n, job, ipos, iziama, izs(ijat), izs(iiat),
+ * amat, ja, ia)
++ izs(iamat) = iziama(1)
+ endif
+ c.....We modify the ordering of unknowns in LPW
+ call compos(n, lpw, izs(ilpw))
diff --git a/patches/series b/patches/series
new file mode 100644
index 0000000..9041998
--- /dev/null
+++ b/patches/series
@@ -0,0 +1,3 @@
+50_all_changes.diff
+gcc-10.patch
+spelling.patch
diff --git a/patches/spelling.patch b/patches/spelling.patch
new file mode 100644
index 0000000..d7e4f0e
--- /dev/null
+++ b/patches/spelling.patch
@@ -0,0 +1,17 @@
+Description: fix spelling caught by lintian
+Author: Étienne Mollier <etienne.mollier@mailoo.org>
+Forwarded: no
+Last-Update: 2021-02-02
+---
+This patch header follows DEP-3: http://dep.debian.net/deps/dep3/
+--- sparskit.orig/INOUT/inout.f
++++ sparskit/INOUT/inout.f
+@@ -1386,7 +1386,7 @@
+ c if can't write the data to the I/O unit specified, should be able to
+ c write everything to standard output (unit 6)
+ c
+- 1000 write(0, *) 'Error, Can''t write data to sepcified unit',iounit
++ 1000 write(0, *) 'Error, Can''t write data to specified unit',iounit
+ write(0, *) 'Write the matrix into standard output instead!'
+ ierr = 1
+ write(6,*) n
diff --git a/rules b/rules
new file mode 100755
index 0000000..4541930
--- /dev/null
+++ b/rules
@@ -0,0 +1,59 @@
+#!/usr/bin/make -f
+
+PACKAGE=sparskit
+
+DEB_SOURCE_PACKAGE:=$(PACKAGE)
+
+STATIC_BUILD_PATH = DEB_build_static
+SHARED_BUILD_PATH = DEB_build_shared
+
+
+# Uncomment this to turn on verbose mode.
+export DH_VERBOSE=1
+
+get-orig-source:
+ . debian/get-orig-source
+
+CMAKE_FLAGS = -DCMAKE_INSTALL_PREFIX:PATH=/usr \
+ -DCMAKE_SHARED_LINKER_FLAGS="-Wl,--as-needed" \
+ -DCMAKE_EXE_LINKER_FLAGS="-Wl,--as-needed" \
+ -DCMAKE_SKIP_RPATH:BOOL=ON
+
+%:
+ dh $@
+
+override_dh_auto_configure:
+ if [ ! -d $(STATIC_BUILD_PATH) ]; then mkdir $(STATIC_BUILD_PATH); fi
+ cd $(STATIC_BUILD_PATH) \
+ && cmake $(CURDIR) $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_TESTING:BOOL=ON
+ cd $(STATIC_BUILD_PATH) \
+ && cmake $(CURDIR) $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=OFF -DBUILD_TESTING:BOOL=ON
+
+ if [ ! -d $(SHARED_BUILD_PATH) ]; then mkdir $(SHARED_BUILD_PATH); fi
+ cd $(SHARED_BUILD_PATH) \
+ && cmake $(CURDIR) $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=ON -DBUILD_TESTING:BOOL=OFF
+ cd $(SHARED_BUILD_PATH) \
+ && cmake $(CURDIR) $(CMAKE_FLAGS) -DBUILD_SHARED_LIBS:BOOL=ON -DBUILD_TESTING:BOOL=OFF
+
+override_dh_auto_build:
+ # build static libs
+ $(MAKE) $(JOBS) -C $(STATIC_BUILD_PATH)
+
+ # build shared libs and binaries
+ $(MAKE) $(JOBS) -C $(SHARED_BUILD_PATH)
+
+override_dh_auto_test:
+ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS)))
+ # run a test
+ ./DEB_build_static/ITSOL/riters.ex
+endif
+
+override_dh_clean:
+ rm -rf $(STATIC_BUILD_PATH)
+ rm -rf $(SHARED_BUILD_PATH)
+# - rm libskit.a
+ dh_clean
+
+override_dh_auto_install:
+ $(MAKE) DESTDIR=$(CURDIR)/debian/tmp install -C $(STATIC_BUILD_PATH)
+ $(MAKE) DESTDIR=$(CURDIR)/debian/tmp/shared install -C $(SHARED_BUILD_PATH)
diff --git a/salsa-ci.yml b/salsa-ci.yml
new file mode 100644
index 0000000..33c3a64
--- /dev/null
+++ b/salsa-ci.yml
@@ -0,0 +1,4 @@
+---
+include:
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
+ - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
diff --git a/source/format b/source/format
new file mode 100644
index 0000000..163aaf8
--- /dev/null
+++ b/source/format
@@ -0,0 +1 @@
+3.0 (quilt)