Commit 3a498a11 authored by Innocent De Marchi's avatar Innocent De Marchi

New upstream version 8.1.6+dfsg1

parent e80a59f3
/*
* @(#)Abacus.c
*
* Copyright 1994 - 2017 David A. Bagley, bagleyd AT verizon.net
* Copyright 1994 - 2018 David A. Bagley, bagleyd AT verizon.net
*
* All rights reserved.
*
......@@ -2812,8 +2812,8 @@ drawCounterLine(AbacusWidget w, int deck, int rail, Boolean focus,
Boolean highlight) {
int dx, dy;
int size = w->abacus.frameSize.y - w->abacus.delta.y - 1;
GC gc = (highlight) ? w->abacus.railGC[2] :
((focus) ? w->abacus.railGC[3] : w->abacus.borderGC);
GC gc = (highlight) ? w->abacus.railShadeGC[7] :
((focus) ? w->abacus.railShadeGC[10] : w->abacus.borderGC);
Pixmap dr = 0;
if (deck == 1)
......@@ -2868,7 +2868,7 @@ drawRail(AbacusWidget w, const int deck, const int rail, const int j,
0, offsetX, size);
if (w->abacus.slot && (j == 1 || (d != -1 && subj == 1))) {
vfillRectClip(w, dr,
(highlight) ? w->abacus.railGC[2] : w->abacus.borderGC,
(highlight) ? w->abacus.railShadeGC[7] : w->abacus.borderGC,
dx + w->abacus.beadSize.x / 2 -
w->abacus.railWidth / 2, dy,
w->abacus.railWidth,
......@@ -2886,7 +2886,7 @@ drawRail(AbacusWidget w, const int deck, const int rail, const int j,
} else if (w->abacus.slot && (j == room ||
(d != -1 && subj == w->abacus.subdecks[d].room))) {
vfillRectClip(w, dr,
(highlight) ? w->abacus.railGC[2] : w->abacus.borderGC,
(highlight) ? w->abacus.railShadeGC[7] : w->abacus.borderGC,
dx + w->abacus.beadSize.x / 2 -
w->abacus.railWidth / 2, dy,
w->abacus.railWidth,
......@@ -2902,14 +2902,35 @@ drawRail(AbacusWidget w, const int deck, const int rail, const int j,
(w->abacus.railWidth - 1) / 2, dy,
2, 1, 2 + 5 * w->abacus.beadSize.y / 8, offsetX, size);
} else {
vfillRectClip(w, dr, ((highlight) ? w->abacus.railGC[2] :
int color = (highlight) ? 6 : (w->abacus.railIndex * 3);
Point coord0, coord1;
coord0.x = dx + w->abacus.beadSize.x / 2 - w->abacus.railWidth / 2;
coord0.y = dy;
coord1.x = w->abacus.railWidth;
coord1.y = w->abacus.beadSize.y + 1 + 2 * w->abacus.pressOffset.y;
vfillRectClip(w, dr, ((highlight) ? w->abacus.railShadeGC[color + 1] :
((w->abacus.slot) ? w->abacus.borderGC :
w->abacus.railGC[w->abacus.railIndex])),
dx + w->abacus.beadSize.x / 2 -
w->abacus.railWidth / 2, dy,
w->abacus.railWidth,
w->abacus.beadSize.y + 1 + 2 * w->abacus.pressOffset.y,
w->abacus.railShadeGC[color + 1])),
coord0.x, coord0.y, coord1.x, coord1.y,
0, offsetX, size);
if (!w->abacus.slot) {
int diff;
if (w->abacus.vertical) {
diff = coord1.y;
} else {
diff = coord1.x;
}
if (diff < 2) {
return;
}
vfillRectClip(w, dr, w->abacus.railShadeGC[color + 2],
coord0.x + coord1.x - 1, coord0.y, 1, coord1.y,
0, offsetX, size);
vfillRectClip(w, dr, w->abacus.railShadeGC[color],
coord0.x, coord0.y, 1, coord1.y,
0, offsetX, size);
}
}
}
......@@ -3106,7 +3127,7 @@ drawBead(AbacusWidget w, const int deck, const int rail, const int bead,
if (!w->abacus.slot || (j != 1 && (d == -1 ||
subj != 1))) {
VFILLRECTANGLE(w, dr, (w->abacus.slot) ?
w->abacus.borderGC : w->abacus.railGC[railI],
w->abacus.borderGC : w->abacus.railShadeGC[railI * 3 + 1],
dx + w->abacus.beadSize.x / 2 -
w->abacus.railWidth / 2,
dy - 1 + ((w->abacus.vertical) ?
......@@ -3116,7 +3137,7 @@ drawBead(AbacusWidget w, const int deck, const int rail, const int bead,
if (!w->abacus.slot || (j != room && (d == -1 ||
subj != w->abacus.subdecks[d].room))) {
VFILLRECTANGLE(w, dr, (w->abacus.slot) ?
w->abacus.borderGC : w->abacus.railGC[railI],
w->abacus.borderGC : w->abacus.railShadeGC[railI * 3 + 1],
dx + w->abacus.beadSize.x / 2 -
w->abacus.railWidth / 2,
dy - 1 + ((w->abacus.vertical) ?
......@@ -3138,7 +3159,7 @@ drawBead(AbacusWidget w, const int deck, const int rail, const int bead,
if (!w->abacus.slot || (j != 1 && (d == -1 ||
subj != 1))) {
VFILLRECTANGLE(w, dr, (w->abacus.slot) ?
w->abacus.borderGC : w->abacus.railGC[railI],
w->abacus.borderGC : w->abacus.railShadeGC[railI * 3 + 1],
dx + w->abacus.beadSize.x / 2 -
w->abacus.railWidth / 2 -
w->abacus.pressOffset.x * pressed,
......@@ -6200,28 +6221,44 @@ setValuesAbacus(AbacusWidget w)
szBuf, sizeof (szBuf), INIFILE);
(void) sscanf(szBuf, "%d %d %d",
&(color.red), &(color.green), &(color.blue));
w->abacus.railGC[0] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[1] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[0] = RGB(brighter(color.red),
brighter(color.green), brighter(color.blue));
w->abacus.railShadeGC[2] = RGB(darker(color.red),
darker(color.green), darker(color.blue));
/* silver (LightSteelBlue1) */
(void) GetPrivateProfileString(SECTION,
"secondaryRailColor", "202 225 255",
szBuf, sizeof (szBuf), INIFILE);
(void) sscanf(szBuf, "%d %d %d",
&(color.red), &(color.green), &(color.blue));
w->abacus.railGC[1] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[4] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[3] = RGB(brighter(color.red),
brighter(color.green), brighter(color.blue));
w->abacus.railShadeGC[5] = RGB(darker(color.red),
darker(color.green), darker(color.blue));
/* Purple */
(void) GetPrivateProfileString(SECTION,
"highlightRailColor", "160 32 240",
szBuf, sizeof (szBuf), INIFILE);
(void) sscanf(szBuf, "%d %d %d",
&(color.red), &(color.green), &(color.blue));
w->abacus.railGC[2] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[7] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[6] = RGB(brighter(color.red),
brighter(color.green), brighter(color.blue));
w->abacus.railShadeGC[8] = RGB(darker(color.red),
darker(color.green), darker(color.blue));
/* black */
(void) GetPrivateProfileString(SECTION,
"lineRailColor", "0 0 0",
szBuf, sizeof (szBuf), INIFILE);
(void) sscanf(szBuf, "%d %d %d",
&(color.red), &(color.green), &(color.blue));
w->abacus.railGC[3] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[10] = RGB(color.red, color.green, color.blue);
w->abacus.railShadeGC[9] = RGB(brighter(color.red),
brighter(color.green), brighter(color.blue));
w->abacus.railShadeGC[11] = RGB(darker(color.red),
darker(color.green), darker(color.blue));
/* gray25 */
(void) GetPrivateProfileString(SECTION,
"borderColor", "64 64 64", szBuf, sizeof (szBuf), INIFILE);
......@@ -6417,9 +6454,21 @@ setAllColors(AbacusWidget w)
values.foreground = w->abacus.railColor[i];
values.background = w->abacus.borderColor;
}
if (w->abacus.railGC[i])
XtReleaseGC((Widget) w, w->abacus.railGC[i]);
w->abacus.railGC[i] = XtGetGC((Widget) w, valueMask, &values);
if (w->abacus.railShadeGC[1 + i * 3])
XtReleaseGC((Widget) w, w->abacus.railShadeGC[1 + i * 3]);
w->abacus.railShadeGC[1 + i * 3] = XtGetGC((Widget) w, valueMask, &values);
if (!w->abacus.mono) {
values.foreground = brighter(w, w->abacus.railColor[i]);
}
if (w->abacus.railShadeGC[i * 3])
XtReleaseGC((Widget) w, w->abacus.railShadeGC[i * 3]);
w->abacus.railShadeGC[i * 3] = XtGetGC((Widget) w, valueMask, &values);
if (!w->abacus.mono) {
values.foreground = darker(w, w->abacus.railColor[i]);
}
if (w->abacus.railShadeGC[2 + i * 3])
XtReleaseGC((Widget) w, w->abacus.railShadeGC[2 + i * 3]);
w->abacus.railShadeGC[2 + i * 3] = XtGetGC((Widget) w, valueMask, &values);
}
for (i = 0; i < 3; i++) {
if (w->abacus.mono) {
......@@ -6878,10 +6927,10 @@ destroyAbacus(Widget old)
if (w->abacus.aux == PRIMARY)
(void) shutdown_sound();
#endif
for (i = 0; i < MAX_SHADES; i++)
for (i = 0; i < MAX_BEAD_SHADES; i++)
XtReleaseGC(old, w->abacus.beadShadeGC[i]);
for (i = 0; i < 4; i++)
XtReleaseGC(old, w->abacus.railGC[i]);
for (i = 0; i < MAX_RAIL_SHADES; i++)
XtReleaseGC(old, w->abacus.railShadeGC[i]);
XtReleaseGC(old, w->abacus.borderGC);
XtReleaseGC(old, w->abacus.frameGC);
XtReleaseGC(old, w->abacus.inverseGC);
......@@ -7092,10 +7141,10 @@ Widget request, Widget renew
(void) SRAND(getpid());
w->abacus.colormap = None;
for (i = 0; i < MAX_SHADES; i++)
for (i = 0; i < MAX_BEAD_SHADES; i++)
w->abacus.beadShadeGC[i] = NULL;
for (i = 0; i < 3; i++)
w->abacus.railGC[i] = NULL;
for (i = 0; i < MAX_RAIL_SHADES; i++)
w->abacus.railShadeGC[i] = NULL;
w->abacus.borderGC = NULL;
w->abacus.frameGC = NULL;
w->abacus.inverseGC = NULL;
......
/*
* @(#)AbacusP.h
*
* Copyright 1994 - 2017 David A. Bagley, bagleyd AT verizon.net
* Copyright 1994 - 2018 David A. Bagley, bagleyd AT verizon.net
*
* Abacus demo and neat pointers from
* Copyright 1991 - 1998 Luis Fernandes, elf AT ee.ryerson.ca
......@@ -160,7 +160,8 @@ extern AbacusClassRec abacusClassRec;
#define MAX_SLICES 10
#define COUNTRY_SIZE 3
#define STRING_SIZE 256
#define MAX_SHADES 12
#define MAX_BEAD_SHADES 12
#define MAX_RAIL_SHADES 12
#define NORMAL 1
#define DOUBLE 2
......@@ -235,8 +236,9 @@ typedef struct _AbacusPart {
Boolean slot, diamond, sound;
char *digits, *mathBuffer;
FILE *fp;
GC frameGC, borderGC, symbolGC, lineGC, railGC[4], inverseGC;
GC beadShadeGC[MAX_SHADES];
GC frameGC, borderGC, symbolGC, lineGC, inverseGC;
GC beadShadeGC[MAX_BEAD_SHADES];
GC railShadeGC[MAX_BEAD_SHADES];
Pixmap bufferBead[4][2][2];
TimeVal oldTime;
Boolean rightToLeftAdd, rightToLeftMult;
......
[Feb 05, 2018] V8.1.6:
Added rail shading.
[Nov 16, 2017] V8.1.5:
Fix for railIndex, can now be set in generic mode.
Russian abacus the spaces were increased by 3.
......
x(m)abacus for Debian
---------------------
You can copy /etc/X11/app-defaults/Abacus to $(HOME)/Abacus and modify the
local copy for adjusting the way x(m)abacus looks and feels.
-- Florian Ernst <florian@debian.org>, Sun, 23 Jan 2005 15:48:48 +0100
This diff is collapsed.
Source: xabacus
Section: games
Priority: optional
Maintainer: Innocent De Marchi <tangram.peces@gmail.com>
Standards-Version: 4.1.1
Build-Depends: debhelper (>= 10),
dpkg-dev (>= 1.16.1~),
libaudiofile-dev,
libaudio-dev,
libmotif-dev,
libxpm-dev,
libxt-dev
Homepage: http://www.sillycycle.com/abacus.html
Vcs-Browser: https://anonscm.debian.org/git/collab-maint/xabacus.git
Vcs-Git: https://anonscm.debian.org/git/collab-maint/xabacus.git
Package: xabacus
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}
Provides: xabacus
Conflicts: xabacus
Replaces: xabacus
Description: simulation of the ancient calculator (plain X version)
This program is an implementation of the original abacus, it provides
the Chinese, Japanese, Korean, Roman and Russian version and can be
modified to allow others.
.
This version was compiled without the Motif GUI widget library and thus
shows limited user interface functionality. See xmabacus for the
extended version.
Package: xmabacus
Architecture: any
Depends: ${misc:Depends}, ${shlibs:Depends}
Provides: xabacus
Conflicts: xabacus
Replaces: xabacus
Description: simulation of the ancient calculator (Motif version)
This program is an implementation of the original abacus, it provides
the Chinese, Japanese, Korean, Roman and Russian version and can be
modified to allow others.
.
This is the Motif version which shows additional functionality. Motif
is a GUI widget library for the X Window system.
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0
Upstream-Name: Abacus
Upstream-Contact: David A. Bagley <bagleyd AT verizon.net>
Source: http://www.sillycycle.com/abacus/
Files: *
Copyright: 1992-2016, David A. Bagley <bagleyd AT verizon.net>
with Thanks to,
Luis Fernandes <elf AT ee.ryerson.ca> - independent xabacus 1.00, initial demo
Sarat Chandran <saratcmahadevan AT yahoo.com> - collaboration on a few ideas
.
The files file.{c,h} and sound.{c,h} are taken from xlock, many authors...
.
For the files rngs.{c,h} the following is given:
Dr. Park's algorithm published in the Oct. '88 ACM
"Random Number Generators: Good Ones Are Hard To Find"
His version available at ftp://cs.wm.edu/pub/rngs.tar
Present form by many authors.
License: Custom
Files: install-sh
Copyright: 1994, X Consortium
License: MIT
Files: debian/*
Copyright: 1998-until 12 Mar 2000, Darren Benham <gecko@debian.org>
until 14 Sep 2000, Christian Kurz <shorty@debian.org>
until 24 May 2001, Adrian Bunk <bunk@fs.tum.de>
until 28 Jul 2004, Eric Van Buggenhaut <ericvb@debian.org>
until 23 Dec 2005, Florian Ernst <florian@debian.org>
until 11 Aug 2006, Jose Carlos Medeiros <debian@psabs.com.br>
until 29 Sep 2017, Florian Ernst <florian@debian.org>
2017, Innocent De Marchi <tangram.peces@gmail.com>
License: GPL-3+
License: Custom
All Rights Reserved
.
Permission to use, copy, modify, and distribute this software and
its documentation for any purpose and without fee is hereby granted,
provided that the above copyright notice appear in all copies and
that both that copyright notice and this permission notice appear in
supporting documentation, and that the name of the author not be
used in advertising or publicity pertaining to distribution of the
software without specific, written prior permission.
.
This program 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.
License: GPL-3+
This package 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: MIT
Copyright (c) 1994 X Consortium
.
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to
deal in the Software without restriction, including without limitation the
rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
sell copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNEC-
TION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
.
Except as contained in this notice, the name of the X Consortium shall not
be used in advertising or otherwise to promote the sale, use or other deal-
ings in this Software without prior written authorization from the X Consor-
tium.
.
FSF changes to this file are in the public domain.
\ No newline at end of file
Document: xabacus
Title: xabacus: The Abacus - The Art of Calculation using Beads
Author: David A. Bagley <bagleyd AT verizon.net>
Abstract: This manual describes what an abacus is
and how it can be used for calculations.
Section: Science/Mathematics
Format: postscript
Files: /usr/share/doc/xabacus/Abacus.ps.gz
Description: Changing the installation directory of the play.sh file
on configure.ac file.
Author: Innocent De Marchi
Last-Update: 2017-10-19
--- a/configure.ac
+++ b/configure.ac
@@ -757,7 +757,7 @@
AC_ARG_ENABLE(def_play, [ --disable-def-play=program
set def-play to program that plays sounds],def_play=$enableval,def_play=yes)
if test "$def_play" = "yes"; then
- def_play=play.sh # yes is a bad default here
+ def_play=usr/share/games/xabacus/play.sh # yes is a bad default here
fi
if test "$def_play" != no; then
AC_MSG_RESULT([defining option DEF_PLAY = "$def_play"])
Description: Changing the installation directory of the play.sh file
on Makefile.in file.
Author: Innocent De Marchi
Last-Update: 2017-10-19
--- a/Makefile.in
+++ b/Makefile.in
@@ -191,14 +191,15 @@
install : $(PROG)$(E) @NOPLAY@play.sh
$(srcdir)/mkinstalldirs $(DESTDIR)$(bindir)
$(INSTALL_PROGRAM) $(PROG)$(E) $(DESTDIR)$(bindir)/$(R)$(M)$(wIDGET)$(E)
- @NOPLAY@$(INSTALL_PROGRAM) play.sh $(DESTDIR)$(bindir)/play.sh
+ #@NOPLAY@$(INSTALL_PROGRAM) play.sh $(DESTDIR)$(bindir)/play.sh
+ $(srcdir)/mkinstalldirs $(DESTDIR)$(readdir)
+ @NOPLAY@$(INSTALL_PROGRAM) play.sh $(DESTDIR)$(readdir)/play.sh
$(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)
$(INSTALL_DATA) $(srcdir)/$(PROG).man $(DESTDIR)$(mandir)/$(PROG).$(MANNUM)
$(srcdir)/mkinstalldirs $(DESTDIR)$(xapploaddir)
sed 's;^$(WIDGET)\*\(.*\): /usr/local/share/games/$(GROUP);$(WIDGET)*\1: $(DESTDIR)$(readdir);g' $(srcdir)/$(WIDGET).ad > $(WIDGET).ad.tmp
$(INSTALL_DATA) $(WIDGET).ad.tmp $(DESTDIR)$(xapploaddir)/$(WIDGET)
rm -f $(WIDGET).ad.tmp
- $(srcdir)/mkinstalldirs $(DESTDIR)$(readdir)
$(INSTALL_DATA) $(srcdir)/$(WIDGET).ps $(DESTDIR)$(readdir)/$(WIDGET).ps
$(INSTALL_DATA) $(srcdir)/abacusDemo.xml $(DESTDIR)$(readdir)/abacusDemo.xml
$(INSTALL_DATA) $(srcdir)@WAVDIR@/bump$(W) $(DESTDIR)$(readdir)/bump$(W)
@@ -212,7 +213,8 @@
uninstall :
$(RM) $(DESTDIR)$(bindir)/$(R)$(M)$(wIDGET)$(E)
- @NOPLAY@$(RM) $(DESTDIR)$(bindir)/play.sh
+ #@NOPLAY@$(RM) $(DESTDIR)$(bindir)/play.sh
+ @NOPLAY@$(RM) $(DESTDIR)$(readdir)/play.sh
$(RM) $(DESTDIR)$(mandir)/$(PROG).$(MANNUM)
$(RM) $(DESTDIR)$(xapploaddir)/$(WIDGET)
$(RM) $(DESTDIR)$(readdir)/$(WIDGET).ps
@@ -224,7 +226,9 @@
install-games : $(PROG)$(E) @NOPLAY@play.sh
$(srcdir)/mkinstalldirs /usr/games
$(INSTALL_PROGRAM) $(PROG)$(E) /usr/games/$(R)$(M)$(wIDGET)$(E)
- @NOPLAY@$(INSTALL_PROGRAM) play.sh $(DESTDIR)$(bindir)/play.sh
+ #@NOPLAY@$(INSTALL_PROGRAM) play.sh $(DESTDIR)$(bindir)/play.sh
+ $(srcdir)/mkinstalldirs $(DESTDIR)$(readdir)
+ @NOPLAY@$(INSTALL_PROGRAM) play.sh $(DESTDIR)$(readdir)/play.sh
chmod 2755 /usr/games/$(R)$(M)$(wIDGET)$(E)
chown games:games /usr/games/$(R)$(M)$(wIDGET)$(E)
$(srcdir)/mkinstalldirs $(DESTDIR)$(mandir)
@@ -233,7 +237,6 @@
sed 's;^$(WIDGET)\*\(.*\): /usr/local/share/games/$(GROUP);$(WIDGET)*\1: $(DESTDIR)$(readdir);g' $(srcdir)/$(WIDGET).ad > $(WIDGET).ad.tmp
$(INSTALL_DATA) $(WIDGET).ad.tmp $(DESTDIR)$(xapploaddir)/$(WIDGET)
rm -f $(WIDGET).ad.tmp
- $(srcdir)/mkinstalldirs $(DESTDIR)$(readdir)
$(INSTALL_DATA) $(srcdir)/$(WIDGET).ps $(DESTDIR)$(readdir)/$(WIDGET).ps
$(INSTALL_DATA) $(srcdir)/abacusDemo.xml $(DESTDIR)$(readdir)/abacusDemo.xml
$(INSTALL_DATA) $(srcdir)@WAVDIR@/bump$(W) $(DESTDIR)$(readdir)/bump$(W)
@@ -247,7 +250,8 @@
uninstall-games :
$(RM) /usr/games/$(R)$(M)$(wIDGET)$(E)
- @NOPLAY@$(RM) $(DESTDIR)$(bindir)/play.sh
+ #@NOPLAY@$(RM) $(DESTDIR)$(bindir)/play.sh
+ @NOPLAY@$(RM) $(DESTDIR)$(readdir)/play.sh
$(RM) $(DESTDIR)$(mandir)/$(PROG).$(MANNUM)
$(RM) $(DESTDIR)$(xapploaddir)/$(WIDGET)
$(RM) $(DESTDIR)$(readdir)/$(WIDGET).ps
#!/usr/bin/make -f
# -*- makefile -*-
# # Sample debian/rules that uses debhelper.
# GNU copyright 1997 to 1999 by Joey Hess.
#export DH_VERBOSE=1
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE)
DEB_BUILD_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_BUILD_GNU_TYPE)
CONFIGURE_FLAGS := --host=$(DEB_HOST_GNU_TYPE) --build=$(DEB_BUILD_GNU_TYPE) \
--prefix=/usr --bindir=/usr/games --with-xpm \
--without-rplay --without-esound --with-nas \
--enable-def-play=/usr/share/games/xabacus/play.sh
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
DPKG_EXPORT_BUILDFLAGS = 1
include /usr/share/dpkg/buildflags.mk
CFLAGS += -Wall
build: build-arch build-indep
build-arch: build-stamp
build-indep: build-stamp
build-stamp:
true
build-motif-stamp:
dh_testdir
ln -sf /usr/share/misc/config.sub .
ln -sf /usr/share/misc/config.guess .
LDFLAGS="$(LDFLAGS)" CFLAGS="$(CFLAGS)" LIBS="-laudiofile" ./configure $(CONFIGURE_FLAGS) --with-motif
$(MAKE) CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" XWIDGETLDFLAGS="$(LDFLAGS)"
touch $@
build-nomotif-stamp:
dh_testdir
[ ! -f Makefile ] || $(MAKE) -i distclean
LDFLAGS="$(LDFLAGS)" CFLAGS="$(CFLAGS)" LIBS="-laudiofile" ./configure $(CONFIGURE_FLAGS) --without-motif
$(MAKE) CFLAGS="$(CFLAGS)" CPPFLAGS="$(CPPFLAGS)" XWIDGETLDFLAGS="$(LDFLAGS)"
touch $@
clean:
dh_testdir
dh_testroot
[ ! -f Makefile ] || $(MAKE) -i distclean
dh_clean build-motif-stamp build-nomotif-stamp config.sub config.guess
install: install-motif-stamp install-nomotif-stamp
for INFIX in '' m ; do \
set -e ; \
install -D debian/x$${INFIX}abacus.desktop \
$(CURDIR)/debian/x$${INFIX}abacus/usr/share/applications/x$${INFIX}abacus.desktop ; \
PIXDIR=$(CURDIR)/debian/x$${INFIX}abacus/usr/share/pixmaps ; \
install -D -m 0644 $(CURDIR)/pixmaps/16x16/abacus.xpm $$PIXDIR/x$${INFIX}abacus.t.xpm ; \
install -D -m 0644 $(CURDIR)/pixmaps/32x32/abacus.xpm $$PIXDIR/x$${INFIX}abacus.m.xpm ; \
rm $(CURDIR)/debian/x$${INFIX}abacus/usr/share/games/xabacus/Abacus.ps ; \
sed -i -e "s@$(CURDIR)/debian/x$${INFIX}abacus@@g" $(CURDIR)/debian/x$${INFIX}abacus/etc/X11/app-defaults/Abacus ; \
done
install-motif-stamp: build-motif-stamp
dh_testroot
$(MAKE) install DESTDIR=$(CURDIR)/debian/xmabacus xapploaddir=/etc/X11/app-defaults
install-nomotif-stamp: build-nomotif-stamp
dh_testroot
$(MAKE) install DESTDIR=$(CURDIR)/debian/xabacus xapploaddir=/etc/X11/app-defaults
binary-indep: install
# We have nothing to do by default.
binary-arch: install
dh_testdir -a
dh_testroot -a
dh_installdocs -a -A debian/README.Debian Abacus.ps README TODO
dh_installmenu -a
dh_installman -a
dh_installchangelogs -a ChangeLog
dh_strip -a
dh_link -a
dh_compress -a
dh_fixperms -a
dh_installdeb -a
dh_shlibdeps -a
dh_gencontrol -a
dh_md5sums -a
dh_builddeb -a
binary: binary-indep binary-arch
.PHONY: build build-arch build-indep build-stamp build-motif-stamp build-nomotif-stamp clean install install-motif-stamp install-nomotif-stamp binary-indep binary-arch binary
version=4
opts=dversionmangle=s/-\d\+dfsg// \
http://www.sillycycle.com/abacus/ xabacus-(.*)\.tar\.xz
[Desktop Entry]
Name=Xabacus
Version=7.5.5
GenericName=Abacus ancient calculator
Comment=simulation of the ancient calculator (plain X version)
Exec=xabacus
Icon=/usr/share/pixmaps/xabacus.m.xpm
Terminal=false
Type=Application
X-MultipleArgs=false
Categories=Utility;Education;Math;Calculator
StartupNotify=true
Keywords=Education;Math;Calculator
\ No newline at end of file
[Desktop Entry]
Name=XMabacus
Version=7.5.5
GenericName=Abacus ancient calculator
Comment=simulation of the ancient calculator (Motif version)
Exec=xmabacus
Icon=/usr/share/pixmaps/xmabacus.m.xpm
Terminal=false
Type=Application
X-MultipleArgs=false
Categories=Utility;Education;Math;Calculator;Motif
StartupNotify=true
Keywords=Education;Math;Calculator
\ No newline at end of file
Document: xabacus
Title: xabacus: The Abacus - The Art of Calculation using Beads
Author: David A. Bagley <bagleyd AT verizon.net>
Abstract: This manual describes what an abacus is
and how it can be used for calculations.
Section: Science/Mathematics
Format: postscript
Files: /usr/share/doc/xmabacus/Abacus.ps.gz
usr/games/xabacus usr/games/xmabacus
usr/share/man/man6/xabacus.6.gz usr/share/man/man6/xmabacus.6.gz
#ifndef _version_h
#define _version_h
#define VERSION "8.1.5"
#define VERSION "8.1.6"
#endif /* _version_h */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment