Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Apr 2006 21:18:48 -0600 (MDT)
From:      "John E. Hein" <jhein@timing.com>
To:        FreeBSD-gnats-submit@FreeBSD.org
Cc:        ports@FreeBSD.org
Subject:   ports/95529: new port: finance/opentaxsolver
Message-ID:  <200604090318.k393Im04068661@gromit.timing.com>
Resent-Message-ID: <200604090320.k393KH9o050971@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         95529
>Category:       ports
>Synopsis:       new port: finance/opentaxsolver
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Apr 09 03:20:16 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator:     John Hein
>Release:        any FreeBSD (tested on 4.x and later, xorg)
>Organization:
>Environment:


>Description:

  Here's a new port for all you last minute tax filers.

  From pkg-descr:

OpenTaxSolver (OTS) is a free program for calculating Tax Form
entries and tax-owed or refund-due, such as US Federal or State
personal income taxes. An optional graphical front-end, OTS_GUI,
has been added. Preliminary versions for Canada and the United
Kingdom were posted in previous years and may be updated with help
from volunteers.

Motivations include:

    * To make tax preparation software available for all platforms.
    * To provide insight into how our taxes are calculated in clear
      unambiguous equations/code.
    * To avoid invasive, bloated commercial software packages.
    * To avoid rewriting our own individual programs each year by
      combining efforts.
    * To provide a simple reliable tax-package requiring only
      rudimentary knowledge to maintain.

WWW: http://opentaxsolver.sourceforge.net/

>How-To-Repeat:

  Apply patch below, cd ports/finance/opentaxsolver, sudo make install.
  Run ots_gui.  Enjoy.

>Fix:

	cd ports
    patch -p << EOF
Index: finance/opentaxsolver/Makefile
===================================================================
RCS file: finance/opentaxsolver/Makefile
diff -N finance/opentaxsolver/Makefile
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ finance/opentaxsolver/Makefile	9 Apr 2006 02:34:08 -0000
@@ -0,0 +1,53 @@
+# Ports collection makefile for:  opentaxsolver
+# Date created:			  Sat Apr 08, 2006
+# Whom:				  John Hein (jhein@timing.com)
+#
+# $FreeBSD$
+#
+
+PORTNAME=	${UPPORTNAME:L}
+PORTVERSION=	3.07
+CATEGORIES=	finance
+MASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
+MASTER_SITE_SUBDIR=	opentaxsolver
+DISTNAME=	${UPPORTNAME}2005_3.07
+EXTRACT_SUFX=	.tgz
+
+MAINTAINER=	ports@FreeBSD.org
+COMMENT=	US tax prep software
+
+USE_XLIB=	yes
+UPPORTNAME=	OpenTaxSolver
+
+post-patch:
+	@${REINPLACE_CMD} -e 's/%%PREFIX%%/${PREFIX:C,/,\/,g}/' \
+	${WRKSRC}/src/GUI/ots_gui.c
+
+do-build:
+	@(cd ${BUILD_WRKSRC}; ${SETENV} ${MAKE_ENV} \
+	Build_taxsolve_packages_LINUX.sh)
+
+BUILDPROGLISTCMD=	${FIND} bin -type f
+BUILDEXAMPLELISTCMD=	${FIND} examples_and_templates -type f
+NEWPLIST=		${WRKDIR}/plist.new
+
+do-install:
+	@(cd ${WRKSRC} && \
+	for prog in $$(${BUILDPROGLISTCMD}); do \
+		${INSTALL_PROGRAM} $${prog} ${PREFIX}/bin/. ; \
+	done && \
+	${MKDIR} ${PREFIX}/share/ots && \
+	${INSTALL_DATA} src/GUI/otslogo.ppm ${PREFIX}/share/ots/. && \
+	for example in $$(${BUILDEXAMPLELISTCMD}); do \
+		${MKDIR} ${PREFIX}/share/ots/$$(dirname $${example}) && \
+		${INSTALL_DATA} $${example} \
+		${PREFIX}/share/ots/$$(dirname $${example})/. ; \
+	done)
+
+new-plist:
+	@(cd ${WRKSRC} && \
+	${BUILDPROGLISTCMD} > ${NEWPLIST} && \
+	${ECHO_CMD} share/ots/otslogo.ppm >> ${NEWPLIST} && \
+	${BUILDEXAMPLELISTCMD} | ${SED} 's,^,share/ots/,' >> ${NEWPLIST})
+
+.include <bsd.port.mk>
Index: finance/opentaxsolver/distinfo
===================================================================
RCS file: finance/opentaxsolver/distinfo
diff -N finance/opentaxsolver/distinfo
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ finance/opentaxsolver/distinfo	8 Apr 2006 17:07:45 -0000
@@ -0,0 +1,3 @@
+MD5 (OpenTaxSolver2005_3.07.tgz) = 7601b50059b55588104591de9e7a8cac
+SHA256 (OpenTaxSolver2005_3.07.tgz) = acf281b2c62405808f453a4c3c926c950501a2700a621aad80ff35b7d0b5d823
+SIZE (OpenTaxSolver2005_3.07.tgz) = 224382
Index: finance/opentaxsolver/pkg-descr
===================================================================
RCS file: finance/opentaxsolver/pkg-descr
diff -N finance/opentaxsolver/pkg-descr
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ finance/opentaxsolver/pkg-descr	8 Apr 2006 17:21:14 -0000
@@ -0,0 +1,19 @@
+OpenTaxSolver (OTS) is a free program for calculating Tax Form
+entries and tax-owed or refund-due, such as US Federal or State
+personal income taxes. An optional graphical front-end, OTS_GUI,
+has been added. Preliminary versions for Canada and the United
+Kingdom were posted in previous years and may be updated with help
+from volunteers.
+
+Motivations include:
+
+    * To make tax preparation software available for all platforms.
+    * To provide insight into how our taxes are calculated in clear
+      unambiguous equations/code.
+    * To avoid invasive, bloated commercial software packages.
+    * To avoid rewriting our own individual programs each year by
+      combining efforts.
+    * To provide a simple reliable tax-package requiring only
+      rudimentary knowledge to maintain.
+
+WWW: http://opentaxsolver.sourceforge.net/
Index: finance/opentaxsolver/pkg-plist
===================================================================
RCS file: finance/opentaxsolver/pkg-plist
diff -N finance/opentaxsolver/pkg-plist
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ finance/opentaxsolver/pkg-plist	9 Apr 2006 02:00:49 -0000
@@ -0,0 +1,41 @@
+bin/ots_gui
+bin/taxsolve_US_1040_2005
+bin/taxsolve_US_1040_Sched_C_2005
+bin/taxsolve_CA_540_2005
+bin/taxsolve_MA_1_2005
+bin/taxsolve_NJ_1040_2005
+bin/taxsolve_PA_40_2005
+bin/taxsolve_VA_760_2005
+bin/taxsolve_OH_IT1040_2005
+bin/taxsolve_NY_IT201_2005
+share/ots/otslogo.ppm
+share/ots/examples_and_templates/CA_540/CA_540_2005_template.dat
+share/ots/examples_and_templates/CA_540/README_CA_540.txt
+share/ots/examples_and_templates/CA_540/CA_540_2005_example.dat
+share/ots/examples_and_templates/VA_760/VA_760_example.dat
+share/ots/examples_and_templates/VA_760/README_VA_760.txt
+share/ots/examples_and_templates/VA_760/VA_760_template.dat
+share/ots/examples_and_templates/MA_1/MA_1_2005_example.dat
+share/ots/examples_and_templates/MA_1/README_MA_1.txt
+share/ots/examples_and_templates/MA_1/MA_1_2005_template.dat
+share/ots/examples_and_templates/US_1040_Sched_C/README_US_1040_Sched_C.txt
+share/ots/examples_and_templates/US_1040_Sched_C/US_1040Sched_C_2005_example.dat
+share/ots/examples_and_templates/US_1040_Sched_C/US_1040Sched_C_2005_template.dat
+share/ots/examples_and_templates/OH_1040/README_OH_IT1040.txt
+share/ots/examples_and_templates/OH_1040/OH_IT1040_2005_template.dat
+share/ots/examples_and_templates/OH_1040/OH_IT1040_2005_example.dat
+share/ots/examples_and_templates/US_1040/US_1040_template.dat
+share/ots/examples_and_templates/US_1040/README_US_1040.txt
+share/ots/examples_and_templates/US_1040/US_1040_example.dat
+share/ots/examples_and_templates/NC_400/README_NC_400.txt
+share/ots/examples_and_templates/NC_400/NC_400_2005_example.dat
+share/ots/examples_and_templates/NC_400/NC_400_2005_template.dat
+share/ots/examples_and_templates/NJ_1040/NJ_1040_2005_template.dat
+share/ots/examples_and_templates/NJ_1040/NJ_1040_2005_example.dat
+share/ots/examples_and_templates/NJ_1040/README_NJ_1040.txt
+share/ots/examples_and_templates/PA_40/README_PA_40.txt
+share/ots/examples_and_templates/PA_40/PA_40_2005_template.dat
+share/ots/examples_and_templates/PA_40/PA_40_2005_example.dat
+share/ots/examples_and_templates/NY_IT201/NY_IT201_2004_example.dat
+share/ots/examples_and_templates/NY_IT201/README_NY_IT201.txt
+share/ots/examples_and_templates/NY_IT201/NY_IT201_2004_template.dat
Index: finance/opentaxsolver/files/patch-src-GUI-otk_lib-otk_lib.c
===================================================================
RCS file: finance/opentaxsolver/files/patch-src-GUI-otk_lib-otk_lib.c
diff -N finance/opentaxsolver/files/patch-src-GUI-otk_lib-otk_lib.c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ finance/opentaxsolver/files/patch-src-GUI-otk_lib-otk_lib.c	8 Apr 2006 17:54:30 -0000
@@ -0,0 +1,13 @@
+--- src/GUI/otk_lib/otk_lib.c.orig	Fri Mar 31 21:42:34 2006
++++ src/GUI/otk_lib/otk_lib.c	Sat Apr  8 11:50:21 2006
+@@ -38,6 +38,10 @@
+ /* Set debug switch. 1=verbose.  0=quiet. */
+ #define DEBUG if (0)
+ 
++#ifdef __FreeBSD__
++#include <sys/time.h>
++#endif
++
+ #include "otk_lib.h"
+ 
+ int Otk_verbose=0;
Index: finance/opentaxsolver/files/patch-src-GUI-ots_gui.c
===================================================================
RCS file: finance/opentaxsolver/files/patch-src-GUI-ots_gui.c
diff -N finance/opentaxsolver/files/patch-src-GUI-ots_gui.c
--- /dev/null	1 Jan 1970 00:00:00 -0000
+++ finance/opentaxsolver/files/patch-src-GUI-ots_gui.c	9 Apr 2006 02:24:55 -0000
@@ -0,0 +1,31 @@
+--- src/GUI/ots_gui.c.orig	Sun Apr  2 22:56:24 2006
++++ src/GUI/ots_gui.c	Sat Apr  8 19:46:40 2006
+@@ -1026,7 +1026,7 @@
+   }
+  else
+   {
+-   sprintf(tmpstr,"%s%s", invocation_path, strg);
++   snprintf(tmpstr, sizeof(tmpstr), "%s%s", invocation_path, strg);
+    printf("Setting Tax Program to be: '%s'\n", tmpstr);
+    taxsolvecmd = strdup(tmpstr);
+    strcpy(taxsolvestrng,tmpstr);
+@@ -1037,8 +1037,8 @@
+    if (k>0) k--;
+    while ((k>0) && (tmpstr[k]!=slashchr)) k--;
+    if (tmpstr[k]==slashchr)  tmpstr[k+1] = '\0';
+-   else  {sprintf(tmpstr,".%c", slashchr);}
+-   sprintf(directory_dat,"%sexamples_and_templates%c", tmpstr, slashchr);
++   else  {snprintf(tmpstr, sizeof(tmpstr), ".%c", slashchr);}
++   snprintf(directory_dat, sizeof(directory_dat), "%sexamples_and_templates%c", "%%PREFIX%%/share/ots/", slashchr);
+    /* CA_540  MA_1  NC_400  NJ_1040  NY_IT201  OH_1040  PA_40  US_1040  US_1040_Sched_C  VA_760 */
+    if (strstr(strg,"CA_540")) strcat(directory_dat,"CA_540"); else
+    if (strstr(strg,"MA_1")) strcat(directory_dat,"MA_1"); else
+@@ -1118,7 +1118,7 @@
+  main_panel = 
+  OtkMakePanel( OtkOuterWindow, Otk_Raised, Otk_LightGray, 1, 7.5, 98, 87 );	/* Main Panel. */
+  Otk_SetBorderThickness( main_panel, 0.25 );
+- sprintf(tmpstr,"%s..%csrc%cGUI%cotslogo.ppm", invocation_path, slashchr, slashchr, slashchr );
++ snprintf(tmpstr, sizeof(tmpstr), "%%PREFIX%%/share/ots/otslogo.ppm");
+  subpanel = OtkMakePanel( main_panel, Otk_Raised, Otk_LightGray, 20, 2, 60, 20 );
+  testfile = fopen(tmpstr,"r");
+  if (testfile!=0)
EOF

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604090318.k393Im04068661>