Generating new objects for the Query Object Framework is repetitive, tedious and time consuming. qof-generator automates this process in PHP to build a working test program, linked against QOF.
Objects are created from a HTML form using a temporary MySQL cache and
exported with Makefile
, ./autogen.sh
,
ChangeLog
, README
, C source code and doxygen mark-up
comments in a tarball built by the PHP code.
The tarball code requires QOF v0.6.0 to build. Currently available from SourceForge. Packages are being prepared for GNU/Linux Debian, Darwin Mac OSX and a sample spec file is available.
The test program will provide an environment to query the newly created object, store data in XML and export into SQL files. The project will also support creating the fundamental object code from XML exported by any other QOF project. Sufficient code will be produced by this method to allow data from real objects to be manipulated, re-exported and then imported back into the original program. The software is designed to make QOF objects more accessible, easier to develop and quicker to implement.
Although a lot of features are not yet implemented, there is a test site.
QOF is free software licenced under the GNU GPL, not LGPL. This means that
code which requires QOF to run must also be GPL because QOF is not loaded as a
module; the test application as it is actually run includes the QOF library
and must therefore be licenced under the GPL.
http://www.gnu.org/licenses/gpl-faq.html#MereAggregation
http://www.gnu.org/licenses/gpl-faq.html#IfLibraryIsGPL
The XML output from the generated application is not covered by the GPL:
http://www.gnu.org/licenses/gpl-faq.html#GPLOutput
http://www.gnu.org/licenses/gpl-faq.html#WhatCaseIsOutputGPL
Note that the XML schema IS licenced under the GPL - you may not distribute modified
versions of the QSF XML schema without making your schema GPL too.
You are allowed to sell copies of the modified program commercially, but only under
the terms of the GNU GPL. Thus, for instance, you must make the source code available
to the users of the program as described in the GPL, and they must be allowed to
redistribute and modify it as described in the GPL. These requirements are the
condition for including the GPL-covered code you received in a program of your own.
http://www.gnu.org/licenses/gpl-faq.html#GPLCommercially
Neither QOF nor the test application can be incorporated into proprietary software.
http://www.gnu.org/licenses/gpl-faq.html#GPLInProprietarySystem
This is a deliberate and conscious decision of the QOF developer to make sure that users who get the software get the freedom they should have, and to encourage people to give back improvements that they make. There is no prospect of QOF being relicenced to make it compatible with proprietary software, so please do not ask as the refusal may offend.
The GNU GPL licence is available in the file copying.txt and is included in each test application tarball.