Skip to content

Commit

Permalink
QtJambi 6.6.2
Browse files Browse the repository at this point in the history
  • Loading branch information
omix committed Feb 17, 2024
1 parent 2c323c3 commit 4f1eb28
Showing 1,291 changed files with 23,565 additions and 8,700 deletions.
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GNU LESSER GENERAL PUBLIC LICENSE

QtJambi is Copyright (C) 1992-2009 Nokia. All rights reserved.
Copyright (C) 2009-2023 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.

You may use, distribute and copy QtJambi under the terms of
GNU Lesser General Public License version 2.1, which is displayed below.
2 changes: 1 addition & 1 deletion LICENSE.GPL3
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GNU GENERAL PUBLIC LICENSE

QtJambi is Copyright (C) 1992-2009 Nokia. All rights reserved.
Copyright (C) 2009-2023 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.

You may use, distribute and copy QtJambi under the terms of
GNU Lesser General Public License version 3. That license references
2 changes: 1 addition & 1 deletion LICENSE.GPLv3
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GNU GENERAL PUBLIC LICENSE

QtJambi is Copyright (C) 1992-2009 Nokia. All rights reserved.
Copyright (C) 2009-2023 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.

You may use, distribute and copy QtJambi under the terms of
GNU Lesser General Public License version 3. That license references
2 changes: 1 addition & 1 deletion LICENSE.LGPL
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GNU LESSER GENERAL PUBLIC LICENSE

QtJambi is Copyright (C) 1992-2009 Nokia. All rights reserved.
Copyright (C) 2009-2023 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.

You may use, distribute and copy QtJambi under the terms of
GNU Lesser General Public License version 2.1, which is displayed below.
2 changes: 1 addition & 1 deletion LICENSE.LGPLv21
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
GNU LESSER GENERAL PUBLIC LICENSE

QtJambi is Copyright (C) 1992-2009 Nokia. All rights reserved.
Copyright (C) 2009-2023 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.

You may use, distribute and copy QtJambi under the terms of
GNU Lesser General Public License version 2.1, which is displayed below.
16 changes: 9 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -20,6 +20,7 @@ would simply add the corresponding Java libraries (.jar files) to their Java pro
QtJambi is available for Java 8 or 11 and higher using Qt5.15 and Qt6 in Java on Windows, Android Linux and macOS.
Most Qt modules are available as QtJambi module as [listed here](www/Modules.md). All modules are published as Maven Artifact.
**The native components for Windows available on Maven require Qt binaries for MSVC (msvc2019_64). Mingw Qt is not compatible with QtJambi unless you build it from scratch with Mingw.**
**By default, the native components of only essential modules are made available on Maven. Please make a request via [/issues](Issues) if you require native components not yet available.**

## Support

@@ -43,6 +44,7 @@ Make yourself familiar with [developing applications with QtJambi](www/How-to-de
* XCode command line tools (macOS only)

When building for Android all required SDK and NDK components are downloaded automatically.
QtJambi build system has been tested on Linux (Ubuntu x64 and arm64, OpenSUSE x64, Fedora x64), Windows (with MSVC2022 for x64 and amd64), macOS (x64 and amd64) and FreeBSD (x64).

### Building QtJambi

@@ -143,7 +145,7 @@ to your project:
<version>$VERSION</version>
</dependency>
```
(exchange `$VERSION` either by `5.15.18`, by `6.5.4` or by `6.6.1`).
(exchange `$VERSION` either by `5.15.19`, by `6.5.5` or by `6.6.2`).

Otherwise, download QtJambi JAR file from [Maven Central Repository](https://search.maven.org/artifact/io.qtjambi/qtjambi/).

@@ -163,7 +165,7 @@ public class Test {
Compile the file:

``` powershell
javac -cp qtjambi-6.5.4.jar Test.java
javac -cp qtjambi-6.5.5.jar Test.java
```

### Execute Example
@@ -181,15 +183,15 @@ By default, on Windows Qt libraries are located in `bin` directory and on Linux

The example program can be executed this way on Windows:
``` powershell
java -cp qtjambi-6.5.4.jar;. -Djava.library.path=C:\Qt\6.5.3\msvc2019_64\bin Test
java -cp qtjambi-6.5.5.jar;. -Djava.library.path=C:\Qt\6.5.3\msvc2019_64\bin Test
```
On Linux it looks this way:
``` bash
java -cp qtjambi-6.5.4.jar:. -Djava.library.path=<path to>/Qt/6.5.3/gcc_64/lib Test
java -cp qtjambi-6.5.5.jar:. -Djava.library.path=<path to>/Qt/6.5.3/gcc_64/lib Test
```
On macOS you additionally need to use the start parameter `-XstartOnFirstThread`:
``` bash
java -cp qtjambi-6.5.4.jar:. -Djava.library.path=<path to>/Qt/6.5.3/macos/lib -XstartOnFirstThread Test
java -cp qtjambi-6.5.5.jar:. -Djava.library.path=<path to>/Qt/6.5.3/macos/lib -XstartOnFirstThread Test
```

On Linux of your distribution provides Qt (of correct version) as system library you don't need to specify library path at all.
@@ -209,7 +211,7 @@ Instead of starting your program with a java command as shown above you can depl
GNU LESSER GENERAL PUBLIC LICENSE
QtJambi is Copyright (C) 1992-2009 Nokia. All rights reserved.
Copyright (C) 2009-2023 Dr. Peter Droste,
Copyright (C) 2009-2024 Dr. Peter Droste,
Omix Visualization GmbH & Co. KG.
All rights reserved.
@@ -221,7 +223,7 @@ Instead of starting your program with a java command as shown above you can depl
GNU GENERAL PUBLIC LICENSE
QtJambi is Copyright (C) 1992-2009 Nokia. All rights reserved.
Copyright (C) 2009-2023 Dr. Peter Droste,
Copyright (C) 2009-2024 Dr. Peter Droste,
Omix Visualization GmbH & Co. KG.
All rights reserved.
71 changes: 58 additions & 13 deletions antfiles/autotests.xml
Original file line number Diff line number Diff line change
@@ -1,7 +1,33 @@
<!--
TODO:
- We work the target names into "tests.*" namespace "compile.java" => "tests.compile.java".
-->
<!--===============================================================================================
==
== Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
==
== This file is part of Qt Jambi.
==
== $BEGIN_LICENSE$
==
== GNU Lesser General Public License Usage
== This file may be used under the terms of the GNU Lesser
== General Public License version 2.1 as published by the Free Software
== Foundation and appearing in the file LICENSE.LGPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU Lesser General Public License version 2.1 requirements
== will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
==
== GNU General Public License Usage
== Alternatively, this file may be used under the terms of the GNU
== General Public License version 3.0 as published by the Free Software
== Foundation and appearing in the file LICENSE.GPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU General Public License version 3.0 requirements will be
== met: http://www.gnu.org/copyleft/gpl.html.
==
== $END_LICENSE$
==
== This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
== WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
==
================================================================================================-->
<project default="all" basedir=".">

<target name="load-properties">
@@ -15,21 +41,41 @@
</not>
</and>
</condition>
<condition property="qtjambi.isqt65" value="true">
<condition property="less.qt63" value="true">
<or>
<less arg1="6" arg2="${qtjambi.soname.version.major}"/>
<and>
<equals arg1="${qtjambi.soname.version.major}" arg2="6"/>
<less arg1="3" arg2="${qtjambi.soname.version.minor}"/>
</and>
</or>
</condition>
<condition property="less.qt65" value="true">
<or>
<less arg1="6" arg2="${qtjambi.soname.version.major}"/>
<and>
<equals arg1="${qtjambi.soname.version.major}" arg2="6"/>
<less arg1="4" arg2="${qtjambi.soname.version.minor}"/>
</and>
</or>
</condition>
<condition property="less.qt66" value="true">
<or>
<less arg1="6" arg2="${qtjambi.soname.version.major}"/>
<and>
<equals arg1="${qtjambi.soname.version.major}" arg2="6"/>
<less arg1="5" arg2="${qtjambi.soname.version.minor}"/>
</and>
</or>
</condition>
<property name="qtjambi.isqt${qtjambi.soname.version.major}" value="true"/>
<fileset id="qtjambi.autotest.classes" dir="${java.srcdir}/autotests">
<include name="io/qt/**/Test${test.includes}.java"/>
<exclude name="io/qt/**/Test*Qt5.java" unless="${qtjambi.isqt5}"/>
<exclude name="io/qt/**/Test*Qt6.java" unless="${qtjambi.isqt6}"/>
<exclude name="io/qt/**/Test*Qt65.java" unless="${qtjambi.isqt65}"/>
<exclude name="io/qt/**/Test*Qt63.java" unless="${less.qt63}"/>
<exclude name="io/qt/**/Test*Qt65.java" unless="${less.qt65}"/>
<exclude name="io/qt/**/Test*Qt66.java" unless="${less.qt66}"/>
<exclude name="io/qt/**/Test*Qml.java" unless="${qtjambi.qml.any.true}"/>
<exclude name="io/qt/**/Test*ActiveX.java" unless="${qtjambi.activex.any.true}"/>
<exclude name="io/qt/**/Test*OpenGL.java" unless="${qtjambi.opengl.any.true}"/>
@@ -143,6 +189,9 @@
<exclude name="io/qt/**/TestQuick*.java" unless="${qtjambi.quick.any.true}"/>
<exclude name="io/qt/**/TestLocation*.java" unless="${qtjambi.location.any.true}"/>
<exclude name="io/qt/**/TestRemoteObjects*.java" unless="${qtjambi.remoteobjects.any.true}"/>
<exclude name="io/qt/**/TestRemoteObjectsInjectedCodeQt5.java" unless="${qtjambi.remoteobjects.privateheaders.true}"/>
<exclude name="io/qt/**/TestQmlVariantQt6.java" unless="${qtjambi.qml.any.true}"/>
<exclude name="io/qt/**/TestQmlVariantQt6.java" unless="${qtjambi.location.any.true}"/>
<exclude name="io/qt/**/TestQtjambiCast*.java" unless="${qtjambi.qml.any.true}"/>
<exclude name="io/qt/**/TestTestlib*.java" unless="${qtjambi.test.any.true}"/>
<exclude name="io/qt/**/TestHttpServer*.java" unless="${qtjambi.httpserver.any.true}"/>
@@ -378,7 +427,7 @@
<target name="compile.java.impl" depends="load-properties">
<delete dir="${test.java.outdir}" failonerror="no"/>
<mkdir dir="${test.java.outdir}"/>
<delete dir="${test.java.srcoutdir}"/>
<delete dir="${test.java.srcoutdir}" failonerror="false"/>
<mkdir dir="${test.java.srcoutdir}"/>
<copy todir="${test.java.srcoutdir}">
<fileset refid="qtjambi.autotest.classes"/>
@@ -414,12 +463,8 @@
<jar destfile="${outputDir}/${qtjambi.osname}/tests/qtjambi-autotests-${qtjambi.jar.version}.jar">
<manifest>
<attribute name="Built-By" value="${qtjambi.user.name} &lt;${qtjambi.user.email}> - ${TODAY}"/>
<!-- <attribute name="Bundle-Activator" value="io.qt.qtjambi.${qtjambi.osplatform}.${qtjambi.configuration}.osgi.Activator"/> -->
<attribute name="Bundle-Description" value="QtJambi Autotests"/>
<!-- TODO: qtjambi.png -->
<!-- <attribute name="Bundle-Icon" value="qtjambi.png"/> -->
<attribute name="Bundle-License" value="GNU LESSER GENERAL PUBLIC LICENSE Version 2.1 February 1999 with Nokia Qt LGPL Exception version 1.0"/>
<!-- <attribute name="Bundle-Localization" value="plugin"/> -->
<attribute name="Bundle-ManifestVersion" value="2"/>
<attribute name="Bundle-Name" value="QtJambi Autotests"/>
<attribute name="Bundle-RequiredExecutionEnvironment" value="${minimum.java.version}"/>
@@ -673,7 +718,7 @@
<isset property="test"/>
</not>
<then>
<delete dir="${outputDir}/${qtjambi.osname}/tests/junitxml-${kind}${jdk-exec-version}" />
<delete dir="${outputDir}/${qtjambi.osname}/tests/junitxml-${kind}${jdk-exec-version}" failonerror="false"/>
</then>
</if>
<condition property="Xcheck_jni" value="-Xcheck:jni" else="-Dx">
@@ -905,7 +950,7 @@
</target>

<target name="tests.report.impl">
<delete dir="${basedir}/TestResults"/>
<delete dir="${basedir}/TestResults" failonerror="false"/>
<mkdir dir="${basedir}/TestResults"/>
<junitreport todir="${basedir}/TestResults">
<fileset dir="${basedir}">
30 changes: 30 additions & 0 deletions antfiles/clean.xml
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
<!--===============================================================================================
==
== Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
==
== This file is part of Qt Jambi.
==
== $BEGIN_LICENSE$
==
== GNU Lesser General Public License Usage
== This file may be used under the terms of the GNU Lesser
== General Public License version 2.1 as published by the Free Software
== Foundation and appearing in the file LICENSE.LGPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU Lesser General Public License version 2.1 requirements
== will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
==
== GNU General Public License Usage
== Alternatively, this file may be used under the terms of the GNU
== General Public License version 3.0 as published by the Free Software
== Foundation and appearing in the file LICENSE.GPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU General Public License version 3.0 requirements will be
== met: http://www.gnu.org/copyleft/gpl.html.
==
== $END_LICENSE$
==
== This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
== WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
==
================================================================================================-->
<project name="qtjambi.clean">
<!--
CLEAN TARGETS
30 changes: 30 additions & 0 deletions antfiles/generator.xml
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
<!--===============================================================================================
==
== Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
==
== This file is part of Qt Jambi.
==
== $BEGIN_LICENSE$
==
== GNU Lesser General Public License Usage
== This file may be used under the terms of the GNU Lesser
== General Public License version 2.1 as published by the Free Software
== Foundation and appearing in the file LICENSE.LGPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU Lesser General Public License version 2.1 requirements
== will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
==
== GNU General Public License Usage
== Alternatively, this file may be used under the terms of the GNU
== General Public License version 3.0 as published by the Free Software
== Foundation and appearing in the file LICENSE.GPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU General Public License version 3.0 requirements will be
== met: http://www.gnu.org/copyleft/gpl.html.
==
== $END_LICENSE$
==
== This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
== WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
==
================================================================================================-->
<project name="qtjambi.generator">
<!--
Building and running the Generator
30 changes: 30 additions & 0 deletions antfiles/java.xml
Original file line number Diff line number Diff line change
@@ -1,3 +1,33 @@
<!--===============================================================================================
==
== Copyright (C) 2009-2024 Dr. Peter Droste, Omix Visualization GmbH & Co. KG. All rights reserved.
==
== This file is part of Qt Jambi.
==
== $BEGIN_LICENSE$
==
== GNU Lesser General Public License Usage
== This file may be used under the terms of the GNU Lesser
== General Public License version 2.1 as published by the Free Software
== Foundation and appearing in the file LICENSE.LGPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU Lesser General Public License version 2.1 requirements
== will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
==
== GNU General Public License Usage
== Alternatively, this file may be used under the terms of the GNU
== General Public License version 3.0 as published by the Free Software
== Foundation and appearing in the file LICENSE.GPL included in the
== packaging of this file. Please review the following information to
== ensure the GNU General Public License version 3.0 requirements will be
== met: http://www.gnu.org/copyleft/gpl.html.
==
== $END_LICENSE$
==
== This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
== WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
==
================================================================================================-->
<project name="qtjambi.java">
<!--
Pure Java jar targets:
Loading

0 comments on commit 4f1eb28

Please sign in to comment.