summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
Diffstat (limited to 'devel')
-rw-r--r--devel/qof/DESCR20
-rw-r--r--devel/qof/Makefile31
-rw-r--r--devel/qof/PLIST319
-rw-r--r--devel/qof/buildlink3.mk22
-rw-r--r--devel/qof/distinfo6
-rw-r--r--devel/qof/patches/patch-aa13
6 files changed, 411 insertions, 0 deletions
diff --git a/devel/qof/DESCR b/devel/qof/DESCR
new file mode 100644
index 00000000000..9d964473a8b
--- /dev/null
+++ b/devel/qof/DESCR
@@ -0,0 +1,20 @@
+QOF, the Query Object Framework, provides a set of C Language
+utilities for performing generic structured complex queries on a
+set of data held by a set of C/C++ objects. This framework is unique
+in that it does NOT require SQL or any database at all to perform
+the query. Thus, it allows programmers to add query support to
+their applications without having to hook into an SQL Database.
+
+Typically, if you have an app, and you want to add the ability to
+show a set of reports, you will need the ability to perform queries
+in order to get the data you need to show a report. Of course, you
+can always write a set of ad-hoc subroutines to return the data
+that you need. But this kind of a programming style is not extensible:
+just wait till you get a user who wants a slightly different report.
+
+The idea behind QOF is to provide a generic framework so that any
+query can be executed, including queries designed by the end-user.
+Normally, this is possible only if you use a database that supports
+SQL, and then only if you deeply embed the database into your
+application. QOF provides simpler, more natural way to work with
+objects.
diff --git a/devel/qof/Makefile b/devel/qof/Makefile
new file mode 100644
index 00000000000..325cf09f692
--- /dev/null
+++ b/devel/qof/Makefile
@@ -0,0 +1,31 @@
+# $NetBSD: Makefile,v 1.1.1.1 2008/10/28 23:36:39 wiz Exp $
+#
+
+DISTNAME= qof-0.7.5
+CATEGORIES= devel
+MASTER_SITES= ${MASTER_SITE_SOURCEFORGE:=qof/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= http://qof.alioth.debian.org/
+COMMENT= Query Object Framework
+
+BUILD_DEPENDS+= doxygen-[0-9]*:../../devel/doxygen
+
+GNU_CONFIGURE= yes
+USE_LIBTOOL= yes
+USE_TOOLS+= gmake pkg-config
+USE_PKGLOCALEDIR= yes
+
+PKGCONFIG_OVERRIDE+= qof-1.pc.in
+PKGCONFIG_OVERRIDE+= qof.pc.in
+
+# not portable enough
+BUILDLINK_TRANSFORM+= rm:-Werror
+
+# optional
+#.include "../../databases/libgda/buildlink3.mk"
+.include "../../databases/sqlite/buildlink3.mk"
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/glib2/buildlink3.mk"
+.include "../../textproc/libxml2/buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/qof/PLIST b/devel/qof/PLIST
new file mode 100644
index 00000000000..4831e300b10
--- /dev/null
+++ b/devel/qof/PLIST
@@ -0,0 +1,319 @@
+@comment $NetBSD: PLIST,v 1.1.1.1 2008/10/28 23:36:39 wiz Exp $
+include/qof/deprecated.h
+include/qof/guid.h
+include/qof/kvpframe.h
+include/qof/kvputil-p.h
+include/qof/kvputil.h
+include/qof/qof-backend-qsf.h
+include/qof/qof.h
+include/qof/qofbackend-p.h
+include/qof/qofbackend.h
+include/qof/qofbook.h
+include/qof/qofbookmerge.h
+include/qof/qofchoice.h
+include/qof/qofclass.h
+include/qof/qofdate.h
+include/qof/qoferror.h
+include/qof/qofevent.h
+include/qof/qofgobj.h
+include/qof/qofid-p.h
+include/qof/qofid.h
+include/qof/qofinstance-p.h
+include/qof/qofinstance.h
+include/qof/qofla-dir.h
+include/qof/qoflog.h
+include/qof/qofnumeric.h
+include/qof/qofobject.h
+include/qof/qofquery-p.h
+include/qof/qofquery.h
+include/qof/qofquerycore-p.h
+include/qof/qofquerycore.h
+include/qof/qofreference.h
+include/qof/qofsession.h
+include/qof/qofsql.h
+include/qof/qoftime.h
+include/qof/qofundo.h
+include/qof/qofutil.h
+include/qof/sql_parser.h
+lib/libqof-backend-qsf.la
+lib/libqof-backend-sqlite.la
+lib/libqof.la
+lib/libqofsql.la
+lib/pkgconfig/qof-1.pc
+lib/pkgconfig/qof.pc
+share/doc/qof/html/doxy/annotated.html
+share/doc/qof/html/doxy/backendapi.html
+share/doc/qof/html/doxy/backenderrors.html
+share/doc/qof/html/doxy/bug.html
+share/doc/qof/html/doxy/classes.html
+share/doc/qof/html/doxy/datelocales.html
+share/doc/qof/html/doxy/deprecated.html
+share/doc/qof/html/doxy/deprecated_8c-source.html
+share/doc/qof/html/doxy/deprecated_8h-source.html
+share/doc/qof/html/doxy/deprecated_8h.html
+share/doc/qof/html/doxy/doxygen.css
+share/doc/qof/html/doxy/doxygen.png
+share/doc/qof/html/doxy/doxygen__main__page_8c-source.html
+share/doc/qof/html/doxy/files.html
+share/doc/qof/html/doxy/ftv2blank.png
+share/doc/qof/html/doxy/ftv2doc.png
+share/doc/qof/html/doxy/ftv2folderclosed.png
+share/doc/qof/html/doxy/ftv2folderopen.png
+share/doc/qof/html/doxy/ftv2lastnode.png
+share/doc/qof/html/doxy/ftv2link.png
+share/doc/qof/html/doxy/ftv2mlastnode.png
+share/doc/qof/html/doxy/ftv2mnode.png
+share/doc/qof/html/doxy/ftv2node.png
+share/doc/qof/html/doxy/ftv2plastnode.png
+share/doc/qof/html/doxy/ftv2pnode.png
+share/doc/qof/html/doxy/ftv2vertline.png
+share/doc/qof/html/doxy/functions.html
+share/doc/qof/html/doxy/functions_vars.html
+share/doc/qof/html/doxy/globals.html
+share/doc/qof/html/doxy/globals_0x63.html
+share/doc/qof/html/doxy/globals_0x64.html
+share/doc/qof/html/doxy/globals_0x65.html
+share/doc/qof/html/doxy/globals_0x66.html
+share/doc/qof/html/doxy/globals_0x67.html
+share/doc/qof/html/doxy/globals_0x68.html
+share/doc/qof/html/doxy/globals_0x69.html
+share/doc/qof/html/doxy/globals_0x6b.html
+share/doc/qof/html/doxy/globals_0x6c.html
+share/doc/qof/html/doxy/globals_0x6d.html
+share/doc/qof/html/doxy/globals_0x6e.html
+share/doc/qof/html/doxy/globals_0x6f.html
+share/doc/qof/html/doxy/globals_0x70.html
+share/doc/qof/html/doxy/globals_0x71.html
+share/doc/qof/html/doxy/globals_0x72.html
+share/doc/qof/html/doxy/globals_0x73.html
+share/doc/qof/html/doxy/globals_0x74.html
+share/doc/qof/html/doxy/globals_0x75.html
+share/doc/qof/html/doxy/globals_0x78.html
+share/doc/qof/html/doxy/globals_defs.html
+share/doc/qof/html/doxy/globals_enum.html
+share/doc/qof/html/doxy/globals_eval.html
+share/doc/qof/html/doxy/globals_func.html
+share/doc/qof/html/doxy/globals_func_0x63.html
+share/doc/qof/html/doxy/globals_func_0x64.html
+share/doc/qof/html/doxy/globals_func_0x67.html
+share/doc/qof/html/doxy/globals_func_0x69.html
+share/doc/qof/html/doxy/globals_func_0x6b.html
+share/doc/qof/html/doxy/globals_func_0x6e.html
+share/doc/qof/html/doxy/globals_func_0x71.html
+share/doc/qof/html/doxy/globals_func_0x72.html
+share/doc/qof/html/doxy/globals_func_0x73.html
+share/doc/qof/html/doxy/globals_func_0x74.html
+share/doc/qof/html/doxy/globals_func_0x75.html
+share/doc/qof/html/doxy/globals_func_0x78.html
+share/doc/qof/html/doxy/globals_type.html
+share/doc/qof/html/doxy/group__Backend.html
+share/doc/qof/html/doxy/group__Book.html
+share/doc/qof/html/doxy/group__BookMerge.html
+share/doc/qof/html/doxy/group__Choice.html
+share/doc/qof/html/doxy/group__Class.html
+share/doc/qof/html/doxy/group__Date.html
+share/doc/qof/html/doxy/group__Entity.html
+share/doc/qof/html/doxy/group__Error.html
+share/doc/qof/html/doxy/group__Event.html
+share/doc/qof/html/doxy/group__GObject.html
+share/doc/qof/html/doxy/group__GUID.html
+share/doc/qof/html/doxy/group__Instance.html
+share/doc/qof/html/doxy/group__KVP.html
+share/doc/qof/html/doxy/group__LibGda.html
+share/doc/qof/html/doxy/group__Math128.html
+share/doc/qof/html/doxy/group__Numeric.html
+share/doc/qof/html/doxy/group__Object.html
+share/doc/qof/html/doxy/group__Object__Private.html
+share/doc/qof/html/doxy/group__QOF.html
+share/doc/qof/html/doxy/group__QOFTIME.html
+share/doc/qof/html/doxy/group__QSF.html
+share/doc/qof/html/doxy/group__Query.html
+share/doc/qof/html/doxy/group__Reference.html
+share/doc/qof/html/doxy/group__SQL.html
+share/doc/qof/html/doxy/group__SQLite.html
+share/doc/qof/html/doxy/group__Session.html
+share/doc/qof/html/doxy/group__Trace.html
+share/doc/qof/html/doxy/group__UNDO.html
+share/doc/qof/html/doxy/group__Utilities.html
+share/doc/qof/html/doxy/guid_8c-source.html
+share/doc/qof/html/doxy/guid_8h-source.html
+share/doc/qof/html/doxy/guid_8h.html
+share/doc/qof/html/doxy/index.html
+share/doc/qof/html/doxy/kvpframe_8c-source.html
+share/doc/qof/html/doxy/kvpframe_8h-source.html
+share/doc/qof/html/doxy/kvpframe_8h.html
+share/doc/qof/html/doxy/kvputil-p_8h-source.html
+share/doc/qof/html/doxy/kvputil-p_8h.html
+share/doc/qof/html/doxy/kvputil_8c-source.html
+share/doc/qof/html/doxy/kvputil_8h-source.html
+share/doc/qof/html/doxy/kvputil_8h.html
+share/doc/qof/html/doxy/main.html
+share/doc/qof/html/doxy/md5_8c-source.html
+share/doc/qof/html/doxy/md5_8h-source.html
+share/doc/qof/html/doxy/modules.html
+share/doc/qof/html/doxy/pages.html
+share/doc/qof/html/doxy/qof-backend-qsf_8h-source.html
+share/doc/qof/html/doxy/qof-backend-qsf_8h.html
+share/doc/qof/html/doxy/qof-gda_8c-source.html
+share/doc/qof/html/doxy/qof-gda_8c.html
+share/doc/qof/html/doxy/qof-gda_8h-source.html
+share/doc/qof/html/doxy/qof-gda_8h.html
+share/doc/qof/html/doxy/qof-sqlite_8c-source.html
+share/doc/qof/html/doxy/qof-sqlite_8c.html
+share/doc/qof/html/doxy/qof-sqlite_8h-source.html
+share/doc/qof/html/doxy/qof-sqlite_8h.html
+share/doc/qof/html/doxy/qof_8h-source.html
+share/doc/qof/html/doxy/qofbackend-p_8h-source.html
+share/doc/qof/html/doxy/qofbackend-p_8h.html
+share/doc/qof/html/doxy/qofbackend_8c-source.html
+share/doc/qof/html/doxy/qofbackend_8h-source.html
+share/doc/qof/html/doxy/qofbackend_8h.html
+share/doc/qof/html/doxy/qofbook-p_8h-source.html
+share/doc/qof/html/doxy/qofbook-p_8h.html
+share/doc/qof/html/doxy/qofbook_8c-source.html
+share/doc/qof/html/doxy/qofbook_8h-source.html
+share/doc/qof/html/doxy/qofbook_8h.html
+share/doc/qof/html/doxy/qofbookmerge_8c-source.html
+share/doc/qof/html/doxy/qofbookmerge_8h-source.html
+share/doc/qof/html/doxy/qofbookmerge_8h.html
+share/doc/qof/html/doxy/qofchoice_8c-source.html
+share/doc/qof/html/doxy/qofchoice_8h-source.html
+share/doc/qof/html/doxy/qofchoice_8h.html
+share/doc/qof/html/doxy/qofclass-p_8h-source.html
+share/doc/qof/html/doxy/qofclass_8c-source.html
+share/doc/qof/html/doxy/qofclass_8h-source.html
+share/doc/qof/html/doxy/qofclass_8h.html
+share/doc/qof/html/doxy/qofdate-p_8h-source.html
+share/doc/qof/html/doxy/qofdate_8c-source.html
+share/doc/qof/html/doxy/qofdate_8h-source.html
+share/doc/qof/html/doxy/qofdate_8h.html
+share/doc/qof/html/doxy/qoferror-p_8h-source.html
+share/doc/qof/html/doxy/qoferror_8c-source.html
+share/doc/qof/html/doxy/qoferror_8h-source.html
+share/doc/qof/html/doxy/qoferror_8h.html
+share/doc/qof/html/doxy/qofevent-p_8h-source.html
+share/doc/qof/html/doxy/qofevent_8c-source.html
+share/doc/qof/html/doxy/qofevent_8h-source.html
+share/doc/qof/html/doxy/qofevent_8h.html
+share/doc/qof/html/doxy/qofgobj_8c-source.html
+share/doc/qof/html/doxy/qofgobj_8h-source.html
+share/doc/qof/html/doxy/qofgobj_8h.html
+share/doc/qof/html/doxy/qofid-p_8h-source.html
+share/doc/qof/html/doxy/qofid_8c-source.html
+share/doc/qof/html/doxy/qofid_8h-source.html
+share/doc/qof/html/doxy/qofid_8h.html
+share/doc/qof/html/doxy/qofinstance-p_8h-source.html
+share/doc/qof/html/doxy/qofinstance_8c-source.html
+share/doc/qof/html/doxy/qofinstance_8h-source.html
+share/doc/qof/html/doxy/qofinstance_8h.html
+share/doc/qof/html/doxy/qofla-dir_8h-source.html
+share/doc/qof/html/doxy/qoflog_8c-source.html
+share/doc/qof/html/doxy/qoflog_8h-source.html
+share/doc/qof/html/doxy/qoflog_8h.html
+share/doc/qof/html/doxy/qofmath128_8c-source.html
+share/doc/qof/html/doxy/qofmath128_8h-source.html
+share/doc/qof/html/doxy/qofnumeric_8c-source.html
+share/doc/qof/html/doxy/qofnumeric_8h-source.html
+share/doc/qof/html/doxy/qofnumeric_8h.html
+share/doc/qof/html/doxy/qofnumericexample.html
+share/doc/qof/html/doxy/qofobject-p_8h-source.html
+share/doc/qof/html/doxy/qofobject-p_8h.html
+share/doc/qof/html/doxy/qofobject_8c-source.html
+share/doc/qof/html/doxy/qofobject_8h-source.html
+share/doc/qof/html/doxy/qofobject_8h.html
+share/doc/qof/html/doxy/qofquery-deserial_8h-source.html
+share/doc/qof/html/doxy/qofquery-p_8h-source.html
+share/doc/qof/html/doxy/qofquery-serialize_8h-source.html
+share/doc/qof/html/doxy/qofquery_8c-source.html
+share/doc/qof/html/doxy/qofquery_8h-source.html
+share/doc/qof/html/doxy/qofquery_8h.html
+share/doc/qof/html/doxy/qofquerycore-p_8h-source.html
+share/doc/qof/html/doxy/qofquerycore_8c-source.html
+share/doc/qof/html/doxy/qofquerycore_8h-source.html
+share/doc/qof/html/doxy/qofquerycore_8h.html
+share/doc/qof/html/doxy/qofreference_8c-source.html
+share/doc/qof/html/doxy/qofreference_8h-source.html
+share/doc/qof/html/doxy/qofreference_8h.html
+share/doc/qof/html/doxy/qofsession-p_8h-source.html
+share/doc/qof/html/doxy/qofsession_8c-source.html
+share/doc/qof/html/doxy/qofsession_8c.html
+share/doc/qof/html/doxy/qofsession_8h-source.html
+share/doc/qof/html/doxy/qofsession_8h.html
+share/doc/qof/html/doxy/qofsql_8c-source.html
+share/doc/qof/html/doxy/qofsql_8c.html
+share/doc/qof/html/doxy/qofsql_8h-source.html
+share/doc/qof/html/doxy/qofsql_8h.html
+share/doc/qof/html/doxy/qofstrftime_8c-source.html
+share/doc/qof/html/doxy/qofstrptime_8c-source.html
+share/doc/qof/html/doxy/qoftime_8c-source.html
+share/doc/qof/html/doxy/qoftime_8h-source.html
+share/doc/qof/html/doxy/qoftime_8h.html
+share/doc/qof/html/doxy/qofundo-p_8h-source.html
+share/doc/qof/html/doxy/qofundo_8c-source.html
+share/doc/qof/html/doxy/qofundo_8h-source.html
+share/doc/qof/html/doxy/qofundo_8h.html
+share/doc/qof/html/doxy/qofutil_8c-source.html
+share/doc/qof/html/doxy/qofutil_8h-source.html
+share/doc/qof/html/doxy/qofutil_8h.html
+share/doc/qof/html/doxy/qsf-backend_8c-source.html
+share/doc/qof/html/doxy/qsf-dir_8h-source.html
+share/doc/qof/html/doxy/qsf-xml-map_8c-source.html
+share/doc/qof/html/doxy/qsf-xml_8c-source.html
+share/doc/qof/html/doxy/qsf-xml_8h-source.html
+share/doc/qof/html/doxy/qsf-xml_8h.html
+share/doc/qof/html/doxy/qsfmaps.html
+share/doc/qof/html/doxy/reference.html
+share/doc/qof/html/doxy/structQofBackendOption__s.html
+share/doc/qof/html/doxy/structQofBackendProvider__s.html
+share/doc/qof/html/doxy/structQofBookMergeData.html
+share/doc/qof/html/doxy/structQofBookMergeRule.html
+share/doc/qof/html/doxy/structQofDate__s.html
+share/doc/qof/html/doxy/structQofEntity__s.html
+share/doc/qof/html/doxy/structQsfMetadata__s.html
+share/doc/qof/html/doxy/structQsfNodeIterate.html
+share/doc/qof/html/doxy/structQsfObject__s.html
+share/doc/qof/html/doxy/structQsfValidates__s.html
+share/doc/qof/html/doxy/struct__QofBook.html
+share/doc/qof/html/doxy/struct__QofObject.html
+share/doc/qof/html/doxy/struct__QofParam.html
+share/doc/qof/html/doxy/struct__QofQueryPredData.html
+share/doc/qof/html/doxy/structqof__entity__reference.html
+share/doc/qof/html/doxy/structquery__date__def.html
+share/doc/qof/html/doxy/structtimespec64.html
+share/doc/qof/html/doxy/tab_b.gif
+share/doc/qof/html/doxy/tab_l.gif
+share/doc/qof/html/doxy/tab_r.gif
+share/doc/qof/html/doxy/tabs.css
+share/doc/qof/html/doxy/test-book-merge_8c-source.html
+share/doc/qof/html/doxy/test-date_8c-source.html
+share/doc/qof/html/doxy/test-engine-stuff_8c-source.html
+share/doc/qof/html/doxy/test-engine-stuff_8c.html
+share/doc/qof/html/doxy/test-engine-stuff_8h-source.html
+share/doc/qof/html/doxy/test-engine-stuff_8h.html
+share/doc/qof/html/doxy/test-event_8c-source.html
+share/doc/qof/html/doxy/test-guid_8c-source.html
+share/doc/qof/html/doxy/test-numeric_8c-source.html
+share/doc/qof/html/doxy/test-object_8c-source.html
+share/doc/qof/html/doxy/test-querynew_8c-source.html
+share/doc/qof/html/doxy/test-recursive_8c-source.html
+share/doc/qof/html/doxy/test-stuff_8c-source.html
+share/doc/qof/html/doxy/test-stuff_8h-source.html
+share/doc/qof/html/doxy/tipshints.html
+share/doc/qof/html/doxy/todo.html
+share/doc/qof/html/doxy/tree.html
+share/locale/id/LC_MESSAGES/qof.mo
+share/locale/pt_BR/LC_MESSAGES/qof.mo
+share/locale/ro/LC_MESSAGES/qof.mo
+share/locale/sv/LC_MESSAGES/qof.mo
+share/locale/vi/LC_MESSAGES/qof.mo
+share/xml/qof/qsf/pilot-qsf-GnuCashInvoice.xml
+share/xml/qof/qsf/pilot-qsf-gncCustomer.xml
+share/xml/qof/qsf/qsf-map.xsd.xml
+share/xml/qof/qsf/qsf-object.xsd.xml
+@dirrm share/xml/qof/qsf
+@dirrm share/xml/qof
+@comment in xmlcatmgr: @dirrm share/xml
+@dirrm share/doc/qof/html/doxy
+@dirrm share/doc/qof/html
+@dirrm share/doc/qof
+@dirrm include/qof
diff --git a/devel/qof/buildlink3.mk b/devel/qof/buildlink3.mk
new file mode 100644
index 00000000000..663e371f61c
--- /dev/null
+++ b/devel/qof/buildlink3.mk
@@ -0,0 +1,22 @@
+# $NetBSD: buildlink3.mk,v 1.1.1.1 2008/10/28 23:36:39 wiz Exp $
+
+BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH}+
+QOF_BUILDLINK3_MK:= ${QOF_BUILDLINK3_MK}+
+
+.if ${BUILDLINK_DEPTH} == "+"
+BUILDLINK_DEPENDS+= qof
+.endif
+
+BUILDLINK_PACKAGES:= ${BUILDLINK_PACKAGES:Nqof}
+BUILDLINK_PACKAGES+= qof
+BUILDLINK_ORDER:= ${BUILDLINK_ORDER} ${BUILDLINK_DEPTH}qof
+
+.if ${QOF_BUILDLINK3_MK} == "+"
+BUILDLINK_API_DEPENDS.qof+= qof>=0.7.5
+BUILDLINK_PKGSRCDIR.qof?= ../../devel/qof
+.endif # QOF_BUILDLINK3_MK
+
+.include "../../devel/gettext-lib/buildlink3.mk"
+.include "../../devel/glib2/buildlink3.mk"
+
+BUILDLINK_DEPTH:= ${BUILDLINK_DEPTH:S/+$//}
diff --git a/devel/qof/distinfo b/devel/qof/distinfo
new file mode 100644
index 00000000000..fa2a7d2160f
--- /dev/null
+++ b/devel/qof/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1.1.1 2008/10/28 23:36:39 wiz Exp $
+
+SHA1 (qof-0.7.5.tar.gz) = 9d7453fca0910c401180b8c8eda7443442633803
+RMD160 (qof-0.7.5.tar.gz) = 3e0ab118c2c5c1d760f2a9445183e77659f692c7
+Size (qof-0.7.5.tar.gz) = 906010 bytes
+SHA1 (patch-aa) = 1e9abeff6dd6fdb50092c104219576fb8d080d1f
diff --git a/devel/qof/patches/patch-aa b/devel/qof/patches/patch-aa
new file mode 100644
index 00000000000..2545f9c7d57
--- /dev/null
+++ b/devel/qof/patches/patch-aa
@@ -0,0 +1,13 @@
+$NetBSD: patch-aa,v 1.1.1.1 2008/10/28 23:36:39 wiz Exp $
+
+--- qof/qofdate.c.orig 2006-08-21 18:28:26.000000000 +0000
++++ qof/qofdate.c
+@@ -793,7 +793,7 @@ qof_date_offset (const QofTime *time, gl
+ if (qd->qd_wday < 0)
+ qd->qd_wday += 7;
+ y = 1970;
+- while (days < 0 || days >= (__isleap (y) ? 366 : 365))
++ while (days < 0 || days >= (qof_date_isleap(y) ? 366 : 365))
+ {
+ /* Guess a corrected year, assuming 365 days per year. */
+ yg = y + days / 365 - (days % 365 < 0);