--- /dev/null
--- /dev/null
++solvespace (2.3+repack1-3) unstable; urgency=medium
++
++ * [6d84f29] Set minimal cmake version to 3.1.0.
++ * [be690c9] Fix FTBFS with glibc 2.25. (Closes: #882167)
++ * [6c8697c] Set Standards-Version: 4.1.1
++ * [2c3d9bd] Set compat level 10
++ * [fb232b5] Set maximal hardening options
++
++ -- Anton Gladky <gladk@debian.org> Wed, 22 Nov 2017 09:54:12 +0100
++
++solvespace (2.3+repack1-2) unstable; urgency=medium
++
++ * [0d4dc2b] Add missing dependency on libslvs1. (Closes: #856937)
++
++ -- Anton Gladky <gladk@debian.org> Mon, 06 Mar 2017 20:59:20 +0100
++
++solvespace (2.3+repack1-1) unstable; urgency=medium
++
++ * [a7825d4] Add d/watch.
++ * [15facd8] Update get_orig.sh script.
++ * [4bcf775] New upstream version 2.3+repack1
++ * [5bfcd9a] Refresh patch.
++
++ -- Anton Gladky <gladk@debian.org> Sat, 31 Dec 2016 09:54:59 +0100
++
++solvespace (2.1+repack2-1) unstable; urgency=medium
++
++ * Initial Release. (Closes: #797997)
++
++ -- Anton Gladky <gladk@debian.org> Mon, 15 Aug 2016 22:31:44 +0200
--- /dev/null
--- /dev/null
++10
--- /dev/null
--- /dev/null
++Source: solvespace
++Maintainer: Debian Science Maintainers <debian-science-maintainers@lists.alioth.debian.org>
++Uploaders: whitequark <whitequark@whitequark.org>,
++ Anton Gladky <gladk@debian.org>
++Section: graphics
++Priority: optional
++Build-Depends: cmake (>=3.1.0),
++ debhelper (>= 10),
++ libfontconfig1-dev,
++ libgl-dev,
++ libglew-dev,
++ libglu-dev,
++ libgtkmm-2.4-dev,
++ libjson-c-dev,
++ libpangomm-1.4-dev,
++ libpng-dev,
++ unifont,
++ zlib1g-dev
++Standards-Version: 4.1.1
++Vcs-Browser: https://anonscm.debian.org/cgit/debian-science/packages/solvespace.git
++Vcs-Git: https://anonscm.debian.org/git/debian-science/packages/solvespace.git
++Homepage: http://solvespace.com
++
++Package: solvespace
++Architecture: any
++Multi-Arch: foreign
++Depends: ${misc:Depends},
++ ${shlibs:Depends}
++Description: Parametric 2d/3d CAD
++ SolveSpace is a parametric 2d/3d CAD program. Applications include:
++ .
++ * modeling 3d parts — draw with extrudes, revolves, and Boolean
++ (union / difference) operations;
++ * modeling 2d parts — draw the part as a single section, and export DXF,
++ PDF, SVG; use 3d assembly to verify fit;
++ * 3d-printed parts — export the STL or other triangle mesh expected by
++ most 3d printers;
++ * preparing CAM data — export 2d vector art for a waterjet machine or
++ laser cutter; or generate STEP or STL, for import into third-party
++ CAM software for machining;
++ * mechanism design — use the constraint solver to simulate planar or
++ spatial linkages, with pin, ball, or slide joints;
++ * plane and solid geometry — replace hand-solved trigonometry and
++ spreadsheets with a live dimensioned drawing.
++
++Package: libslvs1
++Architecture: any
++Multi-Arch: same
++Section: libs
++Depends: ${misc:Depends},
++ ${shlibs:Depends}
++Description: SolveSpace geometric kernel
++ SolveSpace is a parametric 2d/3d CAD. libslvs contains the geometric
++ kernel of SolveSpace, built as a library.
++
++Package: libslvs1-dev
++Architecture: any
++Multi-Arch: same
++Section: libdevel
++Depends: ${misc:Depends},
++ ${shlibs:Depends},
++ libslvs1 (= ${binary:Version})
++Description: SolveSpace geometric kernel (development files)
++ SolveSpace is a parametric 2d/3d CAD. libslvs contains the geometric
++ kernel of SolveSpace, built as a library.
++ .
++ This package includes development files for libslvs.
--- /dev/null
--- /dev/null
++Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
++Upstream-Name: solvespace
++Source: https://github.com/solvespace/solvespace
++
++Files: *
++Copyright: 2008-2013 Jonathan Westhues
++ 2015-2016 whitequark <whitequark@whitequark.org>
++ 2015-2016 Aleksey Egorov <anandamide@mail.ru>
++License: GPL-3.0+
++
++Files: debian/*
++Copyright: 2015-2016 whitequark <whitequark@whitequark.org>
++License: GPL-3.0+
++
++Files: extlib/libdxfrw/*
++Copyright: 2011-2015 José F. Soriano, rallazz@gmail.com
++License: GPL-2.0+
++
++Files: src/fonts/unicode.lff.gz
++Copyright: 2011 Rallaz <rallazz@gmail.com>
++ 2011 Eugene Osintsev <osgene@omskelecom.ru>
++ 2011 Yoshimune Kobayashi <cfg47520@syd.odn.ne,jp>
++License: GPL-2.0+
++
++License: GPL-3.0+
++ This program is free software: you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation, either version 3 of the License, or
++ (at your option) any later version.
++ .
++ This package is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++ .
++ You should have received a copy of the GNU General Public License
++ along with this program. If not, see <http://www.gnu.org/licenses/>.
++ .
++ On Debian systems, the complete text of the GNU General
++ Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
++
++License: GPL-2.0+
++ This program is free software: you can redistribute it and/or modify
++ it under the terms of the GNU General Public License as published by
++ the Free Software Foundation, either version 2 of the License, or
++ (at your option) any later version.
++ .
++ This package is distributed in the hope that it will be useful,
++ but WITHOUT ANY WARRANTY; without even the implied warranty of
++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
++ GNU General Public License for more details.
++ .
++ You should have received a copy of the GNU General Public License
++ along with this program. If not, see <http://www.gnu.org/licenses/>.
++ .
++ On Debian systems, the complete text of the GNU General
++ Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
--- /dev/null
--- /dev/null
++README.md
--- /dev/null
--- /dev/null
++#!/bin/bash
++
++RELEASE_NAME=v2.3
++
++UPSTREAM="https://github.com/solvespace/solvespace.git"
++git clone --depth=1 --recursive -b ${RELEASE_NAME} ${UPSTREAM}
++
++rm -rfv solvespace/extlib/libfreetype
++rm -rfv solvespace/extlib/libpng
++rm -rfv solvespace/extlib/zlib
++rm -rfv solvespace/extlib/si
++rm -rfv solvespace/debian
++rm -rfv solvespace/.gi*
++rm -rfv solvespace/.travis
++rm -rfv solvespace/src/fonts/unifont-8.0.01.hex.gz
++
++tar cJf solvespace_${RELEASE_NAME}+repack2.tar.xz solvespace
--- /dev/null
--- /dev/null
++usr/include/slvs.h
++usr/lib/*/libslvs.so
--- /dev/null
--- /dev/null
++usr/lib/*/libslvs.so.*
--- /dev/null
--- /dev/null
++Description: Remove git hash commit consideration
++Author: Anton Gladky <gladk@debian.org>
++Last-Update: 2016-12-31
++
++Index: solvespace/CMakeLists.txt
++===================================================================
++--- solvespace.orig/CMakeLists.txt
+++++ solvespace/CMakeLists.txt
++@@ -20,7 +20,6 @@ set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX
++ # NOTE TO PACKAGERS: The embedded git commit hash is critical for rapid bug triage when the builds
++ # can come from a variety of sources. If you are mirroring the sources or otherwise build when
++ # the .git directory is not present, please comment the following line:
++-include(GetGitCommitHash)
++ # and instead uncomment the following, adding the complete git hash of the checkout you are using:
++ # set(GIT_COMMIT_HASH 0000000000000000000000000000000000000000)
++
--- /dev/null
--- /dev/null
++Description: Use system packaged unifont
++Author: Anton Gladky <gladk@debian.org>
++Last-Update: 2016-08-15
++
++Index: solvespace/src/CMakeLists.txt
++===================================================================
++--- solvespace.orig/src/CMakeLists.txt
+++++ solvespace/src/CMakeLists.txt
++@@ -101,10 +101,10 @@ add_custom_command(
++ OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/generated/bitmapfont.table.h
++ COMMAND $<TARGET_FILE:unifont2c>
++ ${CMAKE_CURRENT_BINARY_DIR}/generated/bitmapfont.table.h
++- ${CMAKE_CURRENT_SOURCE_DIR}/fonts/unifont-8.0.01.hex.gz
+++ /usr/share/unifont/unifont.hex
++ ${chars}
++ DEPENDS unifont2c
++- ${CMAKE_CURRENT_SOURCE_DIR}/fonts/unifont-8.0.01.hex.gz
+++ /usr/share/unifont/unifont.hex
++ ${chars}
++ VERBATIM)
++
++Index: solvespace/tools/unifont2c.cpp
++===================================================================
++--- solvespace.orig/tools/unifont2c.cpp
+++++ solvespace/tools/unifont2c.cpp
++@@ -118,17 +118,17 @@ int main(int argc, char** argv) {
++ properties[codepoint].exists = true;
++ }
++
++- gzFile unifont = gzopen(argv[2], "rb");
+++ FILE *unifont = fopen(argv[2], "rb");
++ if(!unifont)
++ die("unifont fopen failed");
++
++ while(1) {
++ char buf[100];
++- if(!gzgets(unifont, buf, sizeof(buf))){
++- if(gzeof(unifont)) {
+++ if(!fgets(buf, sizeof(buf), unifont)){
+++ if(feof(unifont)) {
++ break;
++ } else {
++- die("unifont gzgets failed");
+++ die("unifont gets failed");
++ }
++ }
++
++@@ -164,7 +164,7 @@ int main(int argc, char** argv) {
++ properties[codepoint].isWide = isWide;
++ }
++
++- gzclose(unifont);
+++ fclose(unifont);
++
++ FILE *source = fopen(argv[1], "wt");
++ if(!source)
--- /dev/null
--- /dev/null
++Description: Fix FTBFS with glibc 2.25
++ Replace CHAR_WIDTH by CHAR_W_SOLVESPACE
++Author: Anton Gladky <gladk@debian.org>
++Bug-Debian: https://bugs.debian.org/882167
++Last-Update: 2017-11-21
++
++--- solvespace-2.3+repack1.orig/src/textwin.cpp
+++++ solvespace-2.3+repack1/src/textwin.cpp
++@@ -85,7 +85,7 @@ void TextWindow::ShowEditControl(int col
++ editControl.halfRow = halfRow;
++ editControl.col = col;
++
++- int x = LEFT_MARGIN + CHAR_WIDTH*col;
+++ int x = LEFT_MARGIN + CHAR_W_SOLVESPACE*col;
++ int y = (halfRow - SS.TW.scrollPos)*(LINE_HEIGHT/2);
++
++ ShowTextEditControl(x, y + 18, str);
++@@ -447,7 +447,7 @@ void TextWindow::DrawOrHitTestIcons(int
++ double ox = oldMousePos.x, oy = oldMousePos.y - LINE_HEIGHT;
++ ox += 3;
++ oy -= 3;
++- int tw = (str.length() + 1)*(CHAR_WIDTH - 1);
+++ int tw = (str.length() + 1)*(CHAR_W_SOLVESPACE - 1);
++ ox = min(ox, (double) (width - 25) - tw);
++ oy = max(oy, 5.0);
++
++@@ -583,7 +583,7 @@ bool TextWindow::DrawOrHitTestColorPicke
++ int width, height;
++ GetTextWindowSize(&width, &height);
++
++- int px = LEFT_MARGIN + CHAR_WIDTH*editControl.col;
+++ int px = LEFT_MARGIN + CHAR_W_SOLVESPACE*editControl.col;
++ int py = (editControl.halfRow - SS.TW.scrollPos)*(LINE_HEIGHT/2);
++
++ py += LINE_HEIGHT + 5;
++@@ -842,8 +842,8 @@ void TextWindow::Paint(void) {
++ if(ltop < (scrollPos-1)) continue;
++ if(ltop > scrollPos+halfRows) break;
++
++- for(c = 0; c < min((width/CHAR_WIDTH)+1, (int) MAX_COLS); c++) {
++- int x = LEFT_MARGIN + c*CHAR_WIDTH;
+++ for(c = 0; c < min((width/CHAR_W_SOLVESPACE)+1, (int) MAX_COLS); c++) {
+++ int x = LEFT_MARGIN + c*CHAR_W_SOLVESPACE;
++ int y = (ltop-scrollPos)*(LINE_HEIGHT/2) + 4;
++
++ int fg = meta[r][c].fg;
++@@ -866,7 +866,7 @@ void TextWindow::Paint(void) {
++ // Move the quad down a bit, so that the descenders
++ // still have the correct background.
++ y += adj;
++- ssglAxisAlignedQuad(x, x + CHAR_WIDTH, y, y + bh, false);
+++ ssglAxisAlignedQuad(x, x + CHAR_W_SOLVESPACE, y, y + bh, false);
++ y -= adj;
++ }
++ } else if(a == 1) {
++@@ -912,8 +912,8 @@ void TextWindow::Paint(void) {
++ glLineWidth(1);
++ glBegin(GL_LINES);
++ int yp = y + CHAR_HEIGHT;
++- glVertex2d(LEFT_MARGIN + cs*CHAR_WIDTH, yp);
++- glVertex2d(LEFT_MARGIN + cf*CHAR_WIDTH, yp);
+++ glVertex2d(LEFT_MARGIN + cs*CHAR_W_SOLVESPACE, yp);
+++ glVertex2d(LEFT_MARGIN + cf*CHAR_W_SOLVESPACE, yp);
++ glEnd();
++
++ glEnable(GL_TEXTURE_2D);
++@@ -979,7 +979,7 @@ void TextWindow::MouseEvent(bool leftCli
++ hoveredCol = 0;
++
++ // Find the corresponding character in the text buffer
++- int c = (int)((x - LEFT_MARGIN) / CHAR_WIDTH);
+++ int c = (int)((x - LEFT_MARGIN) / CHAR_W_SOLVESPACE);
++ int hh = (LINE_HEIGHT)/2;
++ y += scrollPos*hh;
++ int r;
++--- solvespace-2.3+repack1.orig/src/toolbar.cpp
+++++ solvespace-2.3+repack1/src/toolbar.cpp
++@@ -218,7 +218,7 @@ bool GraphicsWindow::ToolbarDrawOrHitTes
++ }
++ }
++
++- int tw = str.length() * (SS.TW.CHAR_WIDTH - 1) + 10,
+++ int tw = str.length() * (SS.TW.CHAR_W_SOLVESPACE - 1) + 10,
++ th = SS.TW.LINE_HEIGHT + 2;
++
++ double ox = toolbarMouseX + 3, oy = toolbarMouseY + 3;
++--- solvespace-2.3+repack1.orig/src/ui.h
+++++ solvespace-2.3+repack1/src/ui.h
++@@ -27,7 +27,7 @@ public:
++ float fgColorTable[256*3];
++
++ enum {
++- CHAR_WIDTH = 9,
+++ CHAR_W_SOLVESPACE = 9,
++ CHAR_HEIGHT = 16,
++ LINE_HEIGHT = 20,
++ LEFT_MARGIN = 6,
++--- solvespace-2.3+repack1.orig/src/win32/w32main.cpp
+++++ solvespace-2.3+repack1/src/win32/w32main.cpp
++@@ -138,7 +138,7 @@ void SolveSpace::DoMessageBox(const char
++ RECT r;
++ GetWindowRect(GraphicsWnd, &r);
++ const char *title = error ? "SolveSpace - Error" : "SolveSpace - Message";
++- int width = cols*SS.TW.CHAR_WIDTH + 20,
+++ int width = cols*SS.TW.CHAR_W_SOLVESPACE + 20,
++ height = rows*SS.TW.LINE_HEIGHT + 60;
++ MessageWidth = width;
++ MessageHeight = height;
++@@ -546,7 +546,7 @@ LRESULT CALLBACK TextWndProc(HWND hwnd,
++ r->top += extra;
++ break;
++ }
++- int tooNarrow = (SS.TW.MIN_COLS*SS.TW.CHAR_WIDTH) -
+++ int tooNarrow = (SS.TW.MIN_COLS*SS.TW.CHAR_W_SOLVESPACE) -
++ (r->right - r->left);
++ if(tooNarrow >= 0) {
++ switch(wParam) {
++@@ -1367,7 +1367,7 @@ int WINAPI WinMain(HINSTANCE hInstance,
++ InitCommonControls();
++
++ // A monospaced font
++- FixedFont = CreateFontW(SS.TW.CHAR_HEIGHT, SS.TW.CHAR_WIDTH, 0, 0,
+++ FixedFont = CreateFontW(SS.TW.CHAR_HEIGHT, SS.TW.CHAR_W_SOLVESPACE, 0, 0,
++ FW_REGULAR, false,
++ false, false, ANSI_CHARSET, OUT_DEFAULT_PRECIS, CLIP_DEFAULT_PRECIS,
++ DEFAULT_QUALITY, FF_DONTCARE, L"Lucida Console");
--- /dev/null
--- /dev/null
++01_RemoveGitHash.patch
++20_use_system_unifont.patch
++30_fix_ftbfs_glibc.patch
--- /dev/null
--- /dev/null
++#!/usr/bin/make -f
++
++export DEB_BUILD_MAINT_OPTIONS = hardening=+all
++
++%:
++ dh $@
--- /dev/null
--- /dev/null
++.\"Created with GNOME Manpages Editor Wizard
++.\"http://sourceforge.net/projects/gmanedit2
++.TH solvespace 1 "August 15, 2016" "" "SOLVESPACE"
++
++.SH NAME
++solvespace \- a parametric 3d CAD program
++
++.SH DESCRIPTION
++.PP
++.B modeling 3d parts -
++draw with extrudes, revolves, and Boolean (union / difference) operations
++.PP
++.B modeling 1d parts -
++draw the part as a single section, and export DXF, PDF, SVG; use 3d assembly to verify fit
++.PP
++.B 3d-printed parts -
++export the STL or other triangle mesh expected by most 3d printers
++.PP
++.B preparing CAM data -
++export 2d vector art for a waterjet machine or laser cutter; or generate STEP or STL, for import into third-party CAM software for machining
++.PP
++.B mechanism design -
++use the constraint solver to simulate planar or spatial linkages, with pin, ball, or slide joints
++.PP
++.B plane and solid geometry -
++replace hand-solved trigonometry and spreadsheets with a live dimensioned drawing
++.PP
++
--- /dev/null
--- /dev/null
++usr/bin/solvespace
++usr/share/applications
++usr/share/icons
--- /dev/null
--- /dev/null
++debian/solvespace.1
--- /dev/null
--- /dev/null
++<?xml version="1.0"?>
++<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
++ <mime-type type="application/x-solvespace">
++ <comment>SolveSpace sketch</comment>
++ <glob pattern="*.slvs"/>
++ <generic-icon name="x-office-document"/>
++ </mime-type>
++</mime-info>
--- /dev/null
--- /dev/null
++3.0 (quilt)
--- /dev/null
--- /dev/null
++## This file was written by cme command.
++## You can run 'cme edit dpkg' to modify this file.
++## You may also modify the content of this file with your favorite editor.
++
++tar-ignore=".git"
--- /dev/null
--- /dev/null
++version=3
++opts=repacksuffix=+dfsg1,uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha|b|a)\d*)$/$1~$2/,dversionmangle=s/\+(debian|dfsg|ds|deb)\d*$// \
++https://github.com/solvespace/solvespace/tags .*/v?(\d\S*)\.(?:tgz|tbz2|txz|tar\.(?:gz|bz2|xz))