Initial version

This commit is contained in:
Filippo Cucchetto 2014-07-19 18:26:08 +02:00
commit 2dfba08c2c
92 changed files with 18540 additions and 0 deletions

4
D/.directory Normal file
View File

@ -0,0 +1,4 @@
[Dolphin]
Timestamp=2014,5,4,9,29,30
Version=3
ViewMode=2

1
D/.lumenconfig Normal file
View File

@ -0,0 +1 @@
/home/filippo/Desktop/D

20
D/Test.qml Normal file
View File

@ -0,0 +1,20 @@
import QtQuick 2.0
Rectangle
{
width: 100
height: 100
color: "red"
Text
{
anchors.fill: parent
text: model
}
Component.onCompleted: {
//myObject.foo()
var result = myObject.bar();
console.log("From qml received value:", result)
}
}

1
D/build.sh Executable file
View File

@ -0,0 +1 @@
dmd -debug dotherside.d dslot.d dsignal.d dobject.d typemapper.d dothersideinterface.di test.d -L-lDOtherSide -L-L../build/DOtherSide

98
D/dobject.d Normal file
View File

@ -0,0 +1,98 @@
import std.stdio;
import std.conv;
import std.container;
import std.traits;
import std.string;
import dothersideinterface;
import dslot;
import dsignal;
public class DObject
{
this()
{
dos_qobject_create(this.data, cast (void*) this, &staticSlotCallback);
}
~this()
{
dos_qobject_delete(this.data);
}
extern (C) static void staticSlotCallback(void* dobject, int slotIndex, int numParameters, ref void** parameters)
{
DObject dObject = cast(DObject) dobject;
// Given the MetaType arguments construct a void*[] array with good D type
void*[] args = new void*[numParameters / 2];
// Retrieve the slot an call the slot
ISlot slot = dObject._slotsByIndex[slotIndex];
slot.Execute(args);
if (numParameters > 0)
{
writeln("Parameters", numParameters);
writeln("ResultType: ", *(cast(int*)parameters[0]));
writeln("ResultValue: ", *(cast(int*)parameters[1]));
writeln("ResultValue2: ", *(cast(int*)args[0]));
(*(cast(int*)parameters[1])) = (*(cast(int*)args[0]));
}
}
protected auto registerSlot(T)(string name, T t) {
debug writeln("Registering Slot: \"", name, "\" of type \"", T.stringof, "\"");
auto slot = CreateDSlot(t);
auto rawName = name.toStringz();
int slotIndex = -1;
int[] parameterMetaTypes = slot.GetParameterMetaTypes();
int numArgs = cast(int)parameterMetaTypes.length;
dos_qobject_slot_create(data, rawName, numArgs, parameterMetaTypes.ptr, slotIndex);
writeln("Slot index is", slotIndex);
_slotsByName[name] = slot;
_slotsByIndex[slotIndex] = slot;
return slot;
}
protected auto registerSignal(Args...)(string name) {
debug writeln("Registering Signal: \"", name, "\" of type \"", Args.stringof, "\"");
auto signal = CreateDSignal!(Args)();
_signals[name] = signal;
return signal;
}
public void* data;
private ISlot[string] _slotsByName;
private ISlot[int] _slotsByIndex;
private ISignal[string] _signals;
}
unittest
{
auto test = new class DObject {
this()
{
foo = registerSlot("foo", &_foo);
bar = registerSlot("bar", &_bar);
fooSignal = registerSignal!()("fooSignal");
barSignal = registerSignal!(int)("barSignal");
}
DSlot!(void delegate()) foo;
void _foo() { writeln("Called slot \"_foo\"");}
DSlot!(void delegate(int)) bar;
void _bar(int arg) { writeln("Calling slot \"_bar\" with arg \"", arg, "\""); }
DSignal!() fooSignal;
DSignal!int barSignal;
};
test.foo();
test.bar(10);
test.fooSignal();
test.barSignal(10);
}

BIN
D/dotherside Executable file

Binary file not shown.

287
D/dotherside.d Normal file
View File

@ -0,0 +1,287 @@
import std.string;
import std.stdio;
import std.conv;
import std.traits;
import std.functional;
import std.typecons;
import core.vararg;
import dothersideinterface;
import dobject;
class GuiApplication
{
this()
{
dos_guiapplication_create();
}
~this()
{
dos_guiapplication_delete();
}
void exec()
{
dos_guiapplication_exec();
}
}
class QuickView
{
void* data;
this()
{
dos_quickview_create(data);
}
~this()
{
dos_quickview_delete(data);
}
void show()
{
dos_quickview_show(data);
}
QQmlContext rootContext()
{
auto context = new QQmlContext();
dos_quickview_rootContext(data, context.data);
return context;
}
string source()
{
auto array = new CharArray();
dos_quickview_source(data, array.dataRef(), array.sizeRef());
return to!(string)(array.data());
}
void setSource(string filename)
{
immutable(char)* filenameAsCString = filename.toStringz();
dos_quickview_set_source(data, filenameAsCString);
}
}
class QQmlContext
{
void* data;
string baseUrl()
{
auto array = new CharArray();
dos_qmlcontext_baseUrl(data, array.dataRef(), array.sizeRef());
return to!(string)(array.data());
}
void setContextProperty(string name, QVariant value)
{
dos_qmlcontext_setcontextproperty(data, name.ptr, value.data);
}
}
class QVariant
{
private void* data;
this()
{
dos_qvariant_create(this.data);
}
this(int value)
{
dos_qvariant_create_int(this.data, value);
}
this(bool value)
{
dos_qvariant_create_bool(this.data, value);
}
this(string value)
{
dos_qvariant_create_string(this.data, value.toStringz());
}
this(DObject value)
{
dos_qvariant_create_qobject(this.data, value.data);
}
bool isNull()
{
bool result;
dos_qvariant_isnull(this.data, result);
return result;
}
bool toBool()
{
bool result;
dos_qvariant_toBool(this.data, result);
return result;
}
int toInt()
{
int result;
dos_qvariant_toInt(this.data, result);
return result;
}
override string toString()
{
auto array = new CharArray();
dos_qvariant_toString(this.data, array.dataRef(), array.sizeRef());
return to!(string)(array.data());
}
~this()
{
dos_qvariant_delete(this.data);
}
}
class CharArray
{
char* _data;
int _size;
this()
{
_size = 0;
dos_chararray_create(_data, _size);
}
this(int size)
{
_size = size;
dos_chararray_create(_data, _size);
}
this(char* data, int size)
{
_data = data;
_size = size;
}
~this()
{
dos_chararray_delete(_data);
}
char* data()
{
return _data;
}
int size()
{
return _size;
}
ref char* dataRef()
{
return _data;
}
ref int sizeRef()
{
return _size;
}
}
/*
class QSlot
{
alias Callback = void function();
void* data;
Callback callback;
extern (C) static void staticCallback(void* dobject)
{
QSlot slot = cast(QSlot) dobject;
Callback callback = slot.getCallback();
callback();
}
this()
{
dos_qslot_create(this.data);
}
~this()
{
dos_qslot_delete(this.data);
}
Callback getCallback()
{
return this.callback;
}
void setCallback(Callback callback)
{
this.callback = callback;
dos_qslot_setcallback(this.data, cast (void*) this, &staticCallback);
}
}
class QSlot2(T)
{
void* data;
int numberOfArguments;
T* callback;
alias ReturnType!T SlotReturnType;
alias ParameterTypeTuple!T SlotArgumentsType;
extern (C) static void staticCallback(void* dobject, int numArgs, ...)
{
auto arguments = Tuple!SlotArgumentsType();
va_list ap;
version (X86_64)
va_start(ap, __va_argsave);
else version (X86)
va_start(ap, numArgs);
foreach (i, argument; arguments) {
writefln("%s: %s", i, arguments);
va_arg(ap, arguments[i]);
}
va_end(ap);
QSlot2 slot = cast(QSlot2) dobject;
T* callback = slot.getCallback();
callback(arguments.expand);
}
this(T* t)
{
this.numberOfArguments = arity!t;
this.callback = t;
dos_qslot_create(this.data);
dos_qslot_setcallback2(this.data, cast (void*) this, &staticCallback);
}
~this()
{
dos_qslot_delete(this.data);
}
T* getCallback()
{
return this.callback;
}
int getNumberOfArguments()
{
return this.numberOfArguments;
}
}
*/

BIN
D/dotherside.o Normal file

Binary file not shown.

37
D/dothersideinterface.di Normal file
View File

@ -0,0 +1,37 @@
extern(C)
{
void dos_guiapplication_create();
void dos_guiapplication_exec();
void dos_guiapplication_delete();
void dos_quickview_create(ref void*);
void dos_quickview_show(void*);
void dos_quickview_source(void*, ref char *, ref int);
void dos_quickview_set_source(void*, immutable (char)* filename);
void dos_quickview_rootContext(void*, ref void*);
void dos_quickview_delete(void*);
void dos_chararray_create(ref char*);
void dos_chararray_create(ref char*, int size);
void dos_chararray_delete(ref char*);
void dos_qmlcontext_baseUrl(void*, ref char*, ref int);
void dos_qmlcontext_setcontextproperty(void*, immutable (char)*, void*);
void dos_qvariant_create(ref void*);
void dos_qvariant_create_int(ref void*, int value);
void dos_qvariant_create_bool(ref void*, bool value);
void dos_qvariant_create_string(ref void*, immutable(char)* value);
void dos_qvariant_create_qobject(ref void*, void*);
void dos_qvariant_toInt(void*, ref int);
void dos_qvariant_toBool(void*, ref bool);
void dos_qvariant_toString(void*, ref char*, ref int);
void dos_qvariant_isnull(void*, ref bool result);
void dos_qvariant_delete(void*);
void dos_qobject_create(ref void*, void* dobject, void function (void*, int, int , ref void**));
void dos_qobject_slot_create(void*, immutable (char)* name, int, int*, ref int);
void dos_qobject_delete(void*);
}

15
D/dsignal.d Normal file
View File

@ -0,0 +1,15 @@
public class ISignal
{
}
public class DSignal(Args...) : ISignal
{
void opCall(Args args)
{
}
};
public DSignal!(Args) CreateDSignal(Args...)()
{
return new DSignal!(Args)();
}

155
D/dslot.d Normal file
View File

@ -0,0 +1,155 @@
import std.stdio;
import std.container;
import std.conv;
import std.typecons;
import std.traits;
public class ISlot
{
void Execute(void*[] arguments) {}
}
/*
enum Type {
UnknownType = 0, Bool = 1, Int = 2, UInt = 3, LongLong = 4, ULongLong = 5,
Double = 6, Long = 32, Short = 33, Char = 34, ULong = 35, UShort = 36,
UChar = 37, Float = 38,
VoidStar = 31,
QChar = 7, QString = 10, QStringList = 11, QByteArray = 12,
QBitArray = 13, QDate = 14, QTime = 15, QDateTime = 16, QUrl = 17,
QLocale = 18, QRect = 19, QRectF = 20, QSize = 21, QSizeF = 22,
QLine = 23, QLineF = 24, QPoint = 25, QPointF = 26, QRegExp = 27,
QEasingCurve = 29, QUuid = 30, QVariant = 41, QModelIndex = 42,
QRegularExpression = 44,
QJsonValue = 45, QJsonObject = 46, QJsonArray = 47, QJsonDocument = 48,
QObjectStar = 39, SChar = 40,
Void = 43,
QVariantMap = 8, QVariantList = 9, QVariantHash = 28,
QFont = 64, QPixmap = 65, QBrush = 66, QColor = 67, QPalette = 68,
QIcon = 69, QImage = 70, QPolygon = 71, QRegion = 72, QBitmap = 73,
QCursor = 74, QKeySequence = 75, QPen = 76, QTextLength = 77, QTextFormat = 78,
QMatrix = 79, QTransform = 80, QMatrix4x4 = 81, QVector2D = 82,
QVector3D = 83, QVector4D = 84, QQuaternion = 85, QPolygonF = 86,
QSizePolicy = 121,
User = 1024
};
*/
public int GetMetaType(T)()
{
if (is (T == bool))
return 1;
else if (is (T == int))
return 2;
else if (is (T == uint))
return 3;
else if (is (T == double))
return 6;
else if (is (T == long))
return 32;
else if (is (T == short))
return 33;
else if (is (T == float))
return 38;
else if (is (T == int))
return 2;
else if (is( T == void))
return 43;
else
return 0;
}
public class DSlot(T) : ISlot
{
alias ReturnType!T SlotReturnType;
alias ParameterTypeTuple!T Arguments;
this(T callable)
{
_callable = callable;
_parameterMetaTypes[0] = GetMetaType!SlotReturnType();
foreach (i, arg; Arguments)
_parameterMetaTypes[i+1] = GetMetaType!Arguments[i];
}
override void Execute(void*[] arguments)
{
Arguments argumentsTuple;
foreach (i, arg; argumentsTuple)
argumentsTuple[i] = *cast(Arguments[i]*)arguments[i + 1];
static if (is(SlotReturnType == void))
{
opCall(argumentsTuple);
}
else
{
SlotReturnType result = opCall(argumentsTuple);
auto temp = new SlotReturnType;
*temp = result;
arguments[0] = temp;
}
}
ReturnType!T opCall(Arguments arguments)
{
return _callable(arguments);
}
int[] GetParameterMetaTypes() { return _parameterMetaTypes; }
T _callable;
int[] _parameterMetaTypes = new int[Arguments.length + 1];
};
public DSlot!(T) CreateDSlot(T)(T t) if (isCallable!(T))
{
return new DSlot!(T)(t);
}
unittest
{
// Initialize the test case
int a = 10;
char b = 'a';
string c = "prova";
void*[] arguments = new void*[3];
arguments[0] = cast(void*)&a;
arguments[1] = cast(void*)&b;
arguments[2] = cast(void*)&c;
// Testing with a function
auto testFunction = (int a, char b, string c) {
writeln("The other values are: ", to!string(a), ", ", to!string(b), ", ", c);
};
auto slot = CreateDSlot(testFunction);
slot(arguments);
slot(a,b,c);
// Testing with a delegate
int outerValue = 20;
auto testDelegate = (int a, char b, string c) {
outerValue += outerValue;
writeln("The other values are: ", to!string(a), ", ", to!string(b), ", ", c, ", ", outerValue);
};
auto slot2 = CreateDSlot(testDelegate);
slot2(arguments);
slot2(a,b,c);
// Testing with a callable
auto testCallable = new class {
void opCall(int a, char b, string c) {
writeln("The other values are: ", to!string(a), ", ", to!string(b), ", ", c);
}
};
auto slot3 = CreateDSlot(testCallable);
slot3(arguments);
slot3(a,b,c);
}

BIN
D/dslot.o Normal file

Binary file not shown.

53
D/test.d Normal file
View File

@ -0,0 +1,53 @@
import std.stdio;
import std.string;
import std.traits;
import std.conv;
import core.memory;
import std.functional;
import dotherside;
import dobject;
import dslot;
class MyObject : DObject
{
this()
{
//foo = registerSlot("foo", &_foo);
bar = registerSlot("bar", &_bar);
}
DSlot!(void delegate()) foo;
void _foo()
{
writeln("Called foo slot!!");
}
DSlot!(int delegate()) bar;
int _bar()
{
writeln("Called bar slot!!");
return 666;
}
}
void main()
{
try
{
auto app = new GuiApplication;
scope(exit) clear(app);
auto view = new QuickView;
scope(exit) clear(view);
auto myObject = new MyObject();
auto context = view.rootContext();
context.setContextProperty("myObject", new QVariant(myObject));
view.setSource("Test.qml");
view.show();
app.exec();
}
catch
{}
}

10
D/typemapper.d Normal file
View File

@ -0,0 +1,10 @@
import std.stdio;
import std.container;
import std.conv;
import std.typecons;
import std.traits;
public static class TypeMapper
{
}

View File

@ -0,0 +1,15 @@
[Buildset]
BuildItems=@Variant(\x00\x00\x00\t\x00\x00\x00\x00\x01\x00\x00\x00\x0b\x00\x00\x00\x00\x01\x00\x00\x00\x14\x00D\x00O\x00t\x00h\x00e\x00r\x00S\x00i\x00d\x00e)
[QMake_Builder]
Build_Folder=/home/filippo/Desktop/DOtherSide/build
Build_Type=0
Extra_Arguments=
Install_Prefix=
QMake_Binary=/usr/bin/qmake-qt5
[QMake_Builder][/home/filippo/Desktop/DOtherSide/build]
Build_Type=0
Extra_Arguments=
Install_Prefix=
QMake_Binary=/usr/bin/qmake-qt5

View File

@ -0,0 +1,3 @@
[Project]
Manager=KDevQMakeManager
Name=DOtherSide

View File

@ -0,0 +1,9 @@
TEMPLATE = subdirs
CONFIG += ordered
SUBDIRS += \
DynamicQObject \
DOtherSide \
DynamicObjectTest \
IntegrationTest

View File

@ -0,0 +1,368 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.1.2, 2014-07-19T12:19:03. -->
<qtcreator>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Archlinux Desktop Qt5</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Archlinux Desktop Qt5</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{2189a5f0-c566-4930-8be7-7345d921f37d}</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">1</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/filippo/Desktop/build</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/filippo/Desktop/build</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">-j8</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">DynamicObjectTest</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">DynamicObjectTest/DynamicObjectTest.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.1">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes">
<value type="QString">LD_LIBRARY_PATH=/home/filippo/Desktop/build/DOtherSide</value>
</valuelist>
<value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
<value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable">/home/filippo/Desktop/D/dotherside</value>
<value type="bool" key="ProjectExplorer.CustomExecutableRunConfiguration.UseTerminal">false</value>
<value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">/home/filippo/Desktop/D</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Run /home/filippo/Desktop/D/dotherside</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.2">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">IntegrationTest</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">IntegrationTest/IntegrationTest.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">3</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
<value type="QByteArray">{bac1341c-3808-4bfb-86d2-6569bd8f2e20}</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">15</value>
</data>
</qtcreator>

View File

@ -0,0 +1,190 @@
#include "DOtherSide.h"
#include <QtGui/QGuiApplication>
#include <QtQuick/QQuickView>
#include <QtQml/QQmlContext>
#include <QtCore/QDir>
#include <QtCore/QDebug>
#include "DynamicQObject.h"
void convert_to_cstring(const QString& source, CharPtr& destination, int& length)
{
QByteArray array = source.toUtf8();
destination = qstrdup(array.data());
length = qstrlen(array.data());
}
void dos_guiapplication_create()
{
static int argc = 1;
static char empty[1] = {0};
static char* argv[] = {empty};
new QGuiApplication(argc, argv);
}
void dos_guiapplication_delete()
{
delete qApp;
}
void dos_guiapplication_exec()
{
qApp->exec();
}
void dos_quickview_create(void** vptr)
{
*vptr = new QQuickView();
}
void dos_quickview_show(void* vptr)
{
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
view->show();
}
void dos_quickview_delete(void* vptr)
{
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
delete view;
}
void dos_quickview_source(void *vptr, CharPtr& result, int& length)
{
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
QUrl url = view->source();
convert_to_cstring(url.toString(), result, length);
}
void dos_quickview_set_source(void* vptr, const char* filename)
{
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
view->setSource(QUrl::fromLocalFile(QCoreApplication::applicationDirPath() + QDir::separator() + QString(filename)));
}
void dos_quickview_rootContext(void* vptr, void** context)
{
QQuickView* view = reinterpret_cast<QQuickView*>(vptr);
*context = view->rootContext();
}
void dos_chararray_create(CharPtr& ptr)
{
ptr = 0;
}
void dos_chararray_create(CharPtr& ptr, int size)
{
if (size > 0)
ptr = new char[size];
else
ptr = 0;
}
void dos_chararray_delete(CharPtr &ptr)
{
if (ptr) delete[] ptr;
}
void dos_qmlcontext_baseUrl(void* vptr, CharPtr& result, int& length)
{
QQmlContext* context = reinterpret_cast<QQmlContext*>(vptr);
QUrl url = context->baseUrl();
convert_to_cstring(url.toString(), result, length);
}
void dos_qmlcontext_setcontextproperty(void* vptr, const char* name, void* value)
{
QQmlContext* context = reinterpret_cast<QQmlContext*>(vptr);
QVariant* variant = reinterpret_cast<QVariant*>(value);
context->setContextProperty(QString::fromUtf8(name), *variant);
}
void dos_qvariant_create(void **vptr)
{
*vptr = new QVariant();
}
void dos_qvariant_create_int(void **vptr, int value)
{
*vptr = new QVariant(value);
}
void dos_qvariant_create_bool(void **vptr, bool value)
{
*vptr = new QVariant(value);
}
void dos_qvariant_create_string(void** vptr, const char* value)
{
*vptr = new QVariant(value);
}
void dos_qvariant_create_qobject(void **vptr, void* value)
{
QObject* qobject = reinterpret_cast<QObject*>(value);
QVariant* variant = new QVariant();
variant->setValue<QObject*>(qobject);
*vptr = variant;
}
void dos_qvariant_isnull(void* vptr, bool& isNull)
{
QVariant* variant = reinterpret_cast<QVariant*>(vptr);
isNull = variant->isNull();
}
void dos_qvariant_delete(void *vptr)
{
QVariant* variant = reinterpret_cast<QVariant*>(vptr);
delete variant;
}
void dos_qvariant_toInt(void* vptr, int& value)
{
QVariant* variant = reinterpret_cast<QVariant*>(vptr);
value = variant->toInt();
}
void dos_qvariant_toBool(void* vptr, bool& value)
{
QVariant* variant = reinterpret_cast<QVariant*>(vptr);
value = variant->toBool();
}
void dos_qvariant_toString(void* vptr, CharPtr& ptr, int& size)
{
QVariant* variant = reinterpret_cast<QVariant*>(vptr);
convert_to_cstring(variant->toString(), ptr, size);
}
void dos_qobject_create(void** vptr, void* dObjectPointer, void (*dObjectCallback)(void*, int slotIndex, int numParameters, void*** parameters))
{
auto dynamicQObject = new DynamicQObject();
dynamicQObject->setDObjectPointer(dObjectPointer);
dynamicQObject->setDObjectCallback(dObjectCallback);
*vptr = dynamicQObject;
}
void dos_qobject_delete(void *vptr)
{
auto dynamicQObject = reinterpret_cast<DynamicQObject*>(vptr);
delete dynamicQObject;
}
void dos_qobject_slot_create(void* vptr, const char* name, int parametersCount, int* parametersMetaTypes, int* slotIndex)
{
if (parametersCount <= 0)
return;
auto dynamicQObject = reinterpret_cast<DynamicQObject*>(vptr);
QMetaType::Type returnType = static_cast<QMetaType::Type>(parametersMetaTypes[0]);
QList<QMetaType::Type> argumentsTypes;
for (int i = 1; i < parametersCount; ++i)
argumentsTypes << static_cast<QMetaType::Type>(parametersMetaTypes[i]);
dynamicQObject->registerSlot(QString::fromStdString(name), returnType, argumentsTypes, *slotIndex);
}

View File

@ -0,0 +1,48 @@
#ifndef DOTHERSIDE_H
#define DOTHERSIDE_H
#ifdef __cplusplus
extern "C"
{
#endif
typedef char* CharPtr;
typedef void(*Function)(void*);
void dos_guiapplication_create();
void dos_guiapplication_exec();
void dos_guiapplication_delete();
void dos_quickview_create(void** vptr);
void dos_quickview_show(void* vptr);
void dos_quickview_source(void* vptr, CharPtr& result, int& length);
void dos_quickview_set_source(void* vptr, const char* filename);
void dos_quickview_delete(void* vptr);
void dos_quickview_rootContext(void* vptr, void** context);
void dos_qmlcontext_baseUrl(void* vptr, CharPtr& result, int& length);
void dos_qmlcontext_setcontextproperty(void* vptr, const char* name, void* value);
void dos_chararray_create(CharPtr& ptr, int size);
void dos_chararray_delete(CharPtr& ptr);
void dos_qvariant_create(void **vptr);
void dos_qvariant_create_int(void **vptr, int value);
void dos_qvariant_create_bool(void **vptr, bool value);
void dos_qvariant_create_string(void **vptr, const char* value);
void dos_qvariant_create_qobject(void **vptr, void* value);
void dos_qvariant_toInt(void* vptr, int& value);
void dos_qvariant_toBool(void* vptr, bool& value);
void dos_qvariant_toString(void* vptr, CharPtr& ptr, int& size);
void dos_qvariant_isnull(void *vptr, bool& isNull);
void dos_qvariant_delete(void *vptr);
void dos_qobject_create(void **vptr, void *dObjectPointer, void (*dObjectCallback)(void*, int slotIndex, int numParameters, void*** parameters));
void dos_qobject_slot_create(void* vptr, const char* name, int parametersCount, int* parametersMetaTypes, int* slotIndex);
void dos_qobject_delete(void *vptr);
#ifdef __cplusplus
}
#endif
#endif // DOTHERSIDE_H

View File

@ -0,0 +1,40 @@
#-------------------------------------------------
#
# Project created by QtCreator 2014-02-01T19:04:39
#
#-------------------------------------------------
QT += quick
CONFIG += c++11
QMAKE_CXXFLAGS += "-O1 -fpic"
TARGET = DOtherSide
TEMPLATE = lib
DEFINES += DOTHERSIDE_LIBRARY
SOURCES += \
DOtherSide.cpp
HEADERS += \
DOtherSide.h
unix {
target.path = /usr/lib
INSTALLS += target
}
win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../DynamicQObject/release/ -lDynamicQObject
else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../DynamicQObject/debug/ -lDynamicQObject
else:unix: LIBS += -L$$OUT_PWD/../DynamicQObject/ -lDynamicQObject
INCLUDEPATH += $$PWD/../DynamicQObject
DEPENDPATH += $$PWD/../DynamicQObject
win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/release/libDynamicQObject.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/debug/libDynamicQObject.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/release/DynamicQObject.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/debug/DynamicQObject.lib
else:unix: PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/libDynamicQObject.a

View File

@ -0,0 +1,267 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.1.1, 2014-06-06T21:52:54. -->
<qtcreator>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap">
<valuemap type="QVariantMap" key="ClangProjectSettings">
<value type="QString" key="CustomPchFile"></value>
<value type="int" key="PchUsage">1</value>
</valuemap>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop Qt5</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop Qt5</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{2189a5f0-c566-4930-8be7-7345d921f37d}</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/filippo/Desktop/build</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/filippo/Desktop/build-DOtherSide-Desktop_Qt5-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Arguments"></value>
<value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.Executable"></value>
<value type="bool" key="ProjectExplorer.CustomExecutableRunConfiguration.UseTerminal">false</value>
<value type="QString" key="ProjectExplorer.CustomExecutableRunConfiguration.WorkingDirectory">%{buildDir}</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Custom Executable</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.CustomExecutableRunConfiguration</value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">true</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">false</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">true</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
<value type="QByteArray">{bac1341c-3808-4bfb-86d2-6569bd8f2e20}</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">15</value>
</data>
</qtcreator>

View File

@ -0,0 +1,37 @@
#-------------------------------------------------
#
# Project created by QtCreator 2014-07-13T10:03:29
#
#-------------------------------------------------
QT += testlib
QT -= gui
TARGET = tst_dynamicobjecttest
CONFIG += console c++11
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += tst_dynamicobjecttest.cpp \
Mockprinter.cpp
DEFINES += SRCDIR=\\\"$$PWD/\\\"
win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../DynamicQObject/release/ -lDynamicQObject
else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../DynamicQObject/debug/ -lDynamicQObject
else:unix: LIBS += -L$$OUT_PWD/../DynamicQObject/ -lDynamicQObject
INCLUDEPATH += $$PWD/../DynamicQObject
DEPENDPATH += $$PWD/../DynamicQObject
win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/release/libDynamicQObject.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/debug/libDynamicQObject.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/release/DynamicQObject.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/debug/DynamicQObject.lib
else:unix: PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/libDynamicQObject.a
HEADERS += \
Mockprinter.h

View File

@ -0,0 +1,14 @@
#include "Mockprinter.h"
#include <QtCore/QVariant>
#include <QtCore/QDebug>
MockPrinter::MockPrinter(QObject *parent) :
QObject(parent)
{
}
void MockPrinter::print(const QVariant& message)
{
emit printed(message);
}

View File

@ -0,0 +1,18 @@
#pragma once
#include <QObject>
class MockPrinter : public QObject
{
Q_OBJECT
public:
explicit MockPrinter(QObject *parent = 0);
public slots:
void print(const QVariant& message);
signals:
void printed(const QVariant& message);
};

View File

@ -0,0 +1,47 @@
#include <QString>
#include <QtTest>
#include <QCoreApplication>
#include "Mockprinter.h"
#include "DynamicQObject.h"
class DynamicObjectTest : public QObject
{
Q_OBJECT
public:
DynamicObjectTest();
private Q_SLOTS:
void dynamicSignalToRealSlotConnectTest();
void realSignalToDynamicSlotConnectTest();
};
DynamicObjectTest::DynamicObjectTest()
{
}
void DynamicObjectTest::dynamicSignalToRealSlotConnectTest()
{
DynamicQObject dynamicQObject;
dynamicQObject.registerSignal("message", {QMetaType::QVariant});
MockPrinter printer;
QObject::connect(&dynamicQObject, SIGNAL(message(QVariant)), &printer, SLOT(print(QVariant)));
dynamicQObject.emitSignal("message", {"Hello"});
}
void DynamicObjectTest::realSignalToDynamicSlotConnectTest()
{
DynamicQObject dynamicQObject;
int slotIndex;
dynamicQObject.registerSlot("print", QMetaType::Void, {QMetaType::QVariant}, slotIndex);
MockPrinter printer;
QObject::connect(&printer, SIGNAL(printed(QVariant)), &dynamicQObject, SLOT(print(QVariant)));
printer.print("Hello");
}
QTEST_MAIN(DynamicObjectTest)
#include "tst_dynamicobjecttest.moc"

View File

@ -0,0 +1,8 @@
#include <iostream>
#include "DynamicQObject.h"
int main(int argc, char *argv[])
{
DynamicQObject object;
return 0;
}

View File

@ -0,0 +1,171 @@
#include "DynamicQObject.h"
#include <QDebug>
#include <memory>
#include <array>
#include "private/qmetaobjectbuilder_p.h"
DynamicQObject::DynamicQObject(QObject* parent)
: m_dObjectPointer(nullptr)
, m_dObjectCallback(nullptr)
{
QMetaObjectBuilder builder;
builder.setFlags(QMetaObjectBuilder::DynamicMetaObject);
builder.setClassName("DynamicQObject");
builder.setSuperClass(QObject::metaObject());
m_metaObject.reset(builder.toMetaObject());
}
DynamicQObject::~DynamicQObject()
{
}
bool DynamicQObject::registerSlot(const QString& name,
const QMetaType::Type returnType,
const QList<QMetaType::Type>& argumentsTypes,
int& slotIndex)
{
DynamicSlot slot (name, returnType, argumentsTypes);
if (m_slotsBySignature.contains(slot.signature()))
return false;
m_slotsByName.insertMulti(slot.name(), slot);
m_slotsBySignature[slot.signature()] = slot;
QMetaObjectBuilder builder(m_metaObject.data());
QMetaMethodBuilder methodBuilder = builder.addSlot(slot.signature());
methodBuilder.setReturnType(QMetaType::typeName(returnType));
methodBuilder.setAttributes(QMetaMethod::Scriptable);
m_metaObject.reset(builder.toMetaObject());
slotIndex = m_metaObject->indexOfSlot(QMetaObject::normalizedSignature(slot.signature()));
return slotIndex != -1;
}
bool DynamicQObject::executeSlot(const QString& name, const QList<QVariant>& argumentsValues)
{
DynamicSlot slot;
for (DynamicSlot currentSlot : m_slotsByName.values(name))
{
if (currentSlot.validate(argumentsValues))
{
slot = currentSlot;
break;
}
}
if (!slot.isValid())
return false;
int index = m_metaObject->indexOfSlot(QMetaObject::normalizedSignature(slot.signature()));
if (index < 0)
return false;
auto method = m_metaObject->method(index);
method.invoke(this, Q_ARG(QVariant, argumentsValues[0]));
return true;
}
bool DynamicQObject::registerSignal(const QString& name, const QList<QMetaType::Type>& arguments)
{
DynamicSignal signal(name, arguments);
if (m_signalsBySignature.contains(signal.signature()))
return false;
m_signalsByName.insertMulti(signal.name(), signal);
m_signalsBySignature[signal.signature()] = signal;
QMetaObjectBuilder builder(m_metaObject.data());
builder.addSignal(signal.signature());
m_metaObject.reset(builder.toMetaObject());
return true;
}
bool DynamicQObject::emitSignal(const QString& name, const QList<QVariant>& args)
{
DynamicSignal signal;
for (DynamicSignal currentSignal : m_signalsByName.values(name))
{
if (currentSignal.validate(args))
{
signal = currentSignal;
break;
}
}
if (!signal.isValid())
return false;
int index = m_metaObject->indexOfSignal(QMetaObject::normalizedSignature(signal.signature()));
if (index < 0)
return false;
QVariantList argsCopy = args;
QVector<void*> arguments(argsCopy.size() + 1 ,0);
arguments[0] = 0;
for (int i = 0; i < argsCopy.size(); ++i)
arguments[i + 1] = &argsCopy[i];
QMetaObject::activate(this, index, arguments.data());
return true;
}
const QMetaObject* DynamicQObject::metaObject() const
{
return m_metaObject.data();
}
int DynamicQObject::qt_metacall(QMetaObject::Call callType, int index, void** args)
{
if (callType == QMetaObject::InvokeMetaMethod)
{
QMetaMethod method = m_metaObject->method(index);
if (!method.isValid()) return -1;
DynamicSlot slot = m_slotsBySignature[method.methodSignature()];
if (!slot.isValid()) return -1;
int slotIndex = m_metaObject->indexOfSlot(QMetaObject::normalizedSignature(slot.signature()));
// Create the parameter types vector and allocate it on the stack
std::vector<QMetaType::Type> parameterTypes;
parameterTypes.push_back(static_cast<QMetaType::Type>(method.returnType()));
for (int i = 0; i < method.parameterCount(); ++i)
parameterTypes.push_back(static_cast<QMetaType::Type>(method.parameterType(i)));
// Create the vector of both parameter types and values
//std::vector<void*> parameterVector;
void** parameterVector = new void*[parameterTypes.size() * 2];
for (size_t i = 0; i < parameterTypes.size(); ++i)
{
parameterVector[i * 2] = &(parameterTypes[i]);
parameterVector[(i*2) + 1] = args[i];
}
// Forward the vector to D
int size = parameterTypes.size() * 2;
if (m_dObjectCallback && m_dObjectPointer)
m_dObjectCallback(m_dObjectPointer, slotIndex, size, &parameterVector);
return 1;
}
return -1;
}

View File

@ -0,0 +1,44 @@
#pragma once
class QMetaObject;
#include <QScopedPointer>
#include <QObject>
#include "DynamicSignal.h"
#include "DynamicSlot.h"
class DynamicQObject : public QObject
{
typedef void (*Callback)(void*, int, int, void ***);
public:
DynamicQObject(QObject* parent = 0);
virtual ~DynamicQObject();
void setDObjectCallback(Callback callback) { m_dObjectCallback = callback; }
void setDObjectPointer(void* dObjectPointer) { m_dObjectPointer = dObjectPointer; }
bool registerSignal(const QString& name, const QList<QMetaType::Type>& argumentsTypes);
bool emitSignal(const QString& name, const QList<QVariant>& argumentsValues);
bool registerSlot(const QString& name,
const QMetaType::Type returnType,
const QList<QMetaType::Type>& argumentsTypes,
int& slotIndex);
bool executeSlot(const QString& name, const QList<QVariant>& argumentsValues);
virtual const QMetaObject *metaObject() const;
int qt_metacall(QMetaObject::Call, int, void **);
private:
QHash<QString, DynamicSignal> m_signalsByName;
QHash<QByteArray, DynamicSignal> m_signalsBySignature;
QHash<QString, DynamicSlot> m_slotsByName;
QHash<QByteArray, DynamicSlot> m_slotsBySignature;
QScopedPointer<QMetaObject> m_metaObject;
void* m_dObjectPointer;
Callback m_dObjectCallback;
};

View File

@ -0,0 +1,3 @@
[Project]
Manager=KDevQMakeManager
Name=DynamicQObject

View File

@ -0,0 +1,34 @@
######################################################################
# Automatically generated by qmake (3.0) gio giu 26 21:04:12 2014
######################################################################
QT -= gui
TEMPLATE = lib
TARGET = DynamicQObject
INCLUDEPATH += .
INCLUDEPATH += private
CONFIG += c++11
CONFIG += staticlib
# Input
HEADERS += DynamicQObject.h \
private/qmetaobjectbuilder_p.h \
private/qmetaobject_p.h \
private/qobject_p.h \
private/qmetaobject_moc_p.h \
private/qmetaobject.h \
private/qmetatype_p.h \
private/qmetatype.h \
private/qmetatypeswitcher_p.h \
DynamicSignal.h \
DynamicSlot.h
SOURCES += DynamicQObject.cpp \
private/qmetaobjectbuilder.cpp \
private/qmetaobject.cpp \
private/qmetatype.cpp \
DynamicSignal.cpp \
DynamicSlot.cpp

View File

@ -0,0 +1,263 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE QtCreatorProject>
<!-- Written by QtCreator 3.1.2, 2014-07-13T10:00:39. -->
<qtcreator>
<data>
<variable>ProjectExplorer.Project.ActiveTarget</variable>
<value type="int">0</value>
</data>
<data>
<variable>ProjectExplorer.Project.EditorSettings</variable>
<valuemap type="QVariantMap">
<value type="bool" key="EditorConfiguration.AutoIndent">true</value>
<value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value>
<value type="bool" key="EditorConfiguration.CamelCaseNavigation">true</value>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0">
<value type="QString" key="language">Cpp</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">CppGlobal</value>
</valuemap>
</valuemap>
<valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1">
<value type="QString" key="language">QmlJS</value>
<valuemap type="QVariantMap" key="value">
<value type="QByteArray" key="CurrentPreferences">QmlJSGlobal</value>
</valuemap>
</valuemap>
<value type="int" key="EditorConfiguration.CodeStyle.Count">2</value>
<value type="QByteArray" key="EditorConfiguration.Codec">UTF-8</value>
<value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value>
<value type="int" key="EditorConfiguration.IndentSize">4</value>
<value type="bool" key="EditorConfiguration.KeyboardTooltips">false</value>
<value type="int" key="EditorConfiguration.MarginColumn">80</value>
<value type="bool" key="EditorConfiguration.MouseHiding">true</value>
<value type="bool" key="EditorConfiguration.MouseNavigation">true</value>
<value type="int" key="EditorConfiguration.PaddingMode">1</value>
<value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value>
<value type="bool" key="EditorConfiguration.ShowMargin">false</value>
<value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value>
<value type="bool" key="EditorConfiguration.SpacesForTabs">true</value>
<value type="int" key="EditorConfiguration.TabKeyBehavior">0</value>
<value type="int" key="EditorConfiguration.TabSize">8</value>
<value type="bool" key="EditorConfiguration.UseGlobal">true</value>
<value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value>
<value type="bool" key="EditorConfiguration.addFinalNewLine">true</value>
<value type="bool" key="EditorConfiguration.cleanIndentation">true</value>
<value type="bool" key="EditorConfiguration.cleanWhitespace">true</value>
<value type="bool" key="EditorConfiguration.inEntireDocument">false</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.PluginSettings</variable>
<valuemap type="QVariantMap"/>
</data>
<data>
<variable>ProjectExplorer.Project.Target.0</variable>
<valuemap type="QVariantMap">
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Digia Qt5 </value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Digia Qt5 </value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{61f29543-4b25-4408-bfd8-2dc54851c8b5}</value>
<value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value>
<value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/filippo/Projects/build-DynamicQObject-Digia_Qt5-Debug</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Debug</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1">
<value type="QString" key="ProjectExplorer.BuildConfiguration.BuildDirectory">/home/filippo/Projects/build-DynamicQObject-Digia_Qt5-Release</value>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value>
<value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value>
<value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value>
</valuemap>
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0">
<value type="bool" key="ProjectExplorer.BuildStep.Enabled">true</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value>
<valuelist type="QVariantList" key="Qt4ProjectManager.MakeStep.AutomaticallyAddedMakeArguments">
<value type="QString">-w</value>
<value type="QString">-r</value>
</valuelist>
<value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value>
<value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value>
<value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value>
<valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Release</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value>
<value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value>
<value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0">
<valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0">
<value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value>
</valuemap>
<value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy locally</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.PluginSettings"/>
<valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0">
<valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value>
<value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value>
<value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value>
<value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value>
<value type="int" key="Analyzer.Valgrind.LeakCheckOnFinish">1</value>
<value type="int" key="Analyzer.Valgrind.NumCallers">25</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/>
<value type="int" key="Analyzer.Valgrind.SelfModifyingCodeDetection">1</value>
<value type="bool" key="Analyzer.Valgrind.Settings.UseGlobalSettings">true</value>
<value type="bool" key="Analyzer.Valgrind.ShowReachable">false</value>
<value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value>
<value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value>
<valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds">
<value type="int">0</value>
<value type="int">1</value>
<value type="int">2</value>
<value type="int">3</value>
<value type="int">4</value>
<value type="int">5</value>
<value type="int">6</value>
<value type="int">7</value>
<value type="int">8</value>
<value type="int">9</value>
<value type="int">10</value>
<value type="int">11</value>
<value type="int">12</value>
<value type="int">13</value>
<value type="int">14</value>
</valuelist>
<value type="int" key="PE.EnvironmentAspect.Base">2</value>
<valuelist type="QVariantList" key="PE.EnvironmentAspect.Changes"/>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">DynamicQObject</value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
<value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/filippo/Projects/DynamicQObject/DynamicQObject.pro</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">DynamicQObject.pro</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
<value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">false</value>
<value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value>
<value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value>
<value type="bool" key="RunConfiguration.UseCppDebugger">false</value>
<value type="bool" key="RunConfiguration.UseCppDebuggerAuto">true</value>
<value type="bool" key="RunConfiguration.UseMultiProcess">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebugger">false</value>
<value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">true</value>
</valuemap>
<value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value>
</valuemap>
</data>
<data>
<variable>ProjectExplorer.Project.TargetCount</variable>
<value type="int">1</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.EnvironmentId</variable>
<value type="QByteArray">{bac1341c-3808-4bfb-86d2-6569bd8f2e20}</value>
</data>
<data>
<variable>ProjectExplorer.Project.Updater.FileVersion</variable>
<value type="int">15</value>
</data>
</qtcreator>

View File

@ -0,0 +1,106 @@
#include "DynamicSignal.h"
#include "DynamicQObject.h"
struct SignalData
{
QString name;
QByteArray signature;
QList<QMetaType::Type> arguments;
};
DynamicSignal::DynamicSignal()
: d(nullptr)
{
}
DynamicSignal::DynamicSignal(const QString& name, const QList<QMetaType::Type>& arguments)
: d(new SignalData())
{
d->name = name;
d->signature = QByteArray();
d->arguments = arguments;
_initSignature();
}
DynamicSignal::DynamicSignal(const DynamicSignal& signal)
: d(nullptr)
{
if (signal.isValid())
{
d.reset(new SignalData());
*d = *signal.d;
}
}
DynamicSignal& DynamicSignal::operator=(const DynamicSignal& signal)
{
if (signal.isValid())
{
d.reset(new SignalData());
*d = *signal.d;
}
else
d.reset(nullptr);
return *this;
}
DynamicSignal::~DynamicSignal()
{
}
bool DynamicSignal::isValid() const
{
return d != nullptr;
}
QString DynamicSignal::name() const
{
return isValid() ? d->name : QString();
}
QByteArray DynamicSignal::signature()
{
return isValid() ? d->signature : QByteArray();
}
bool DynamicSignal::validate(const QVariantList& arguments)
{
if (!isValid())
return false;
return validate(d->arguments, arguments);
}
bool DynamicSignal::validate(const QList<QMetaType::Type>& argumentsTypes, const QVariantList& argumentsValues)
{
if (argumentsTypes.size() != argumentsValues.size())
return false;
for (int i = 0; i < argumentsTypes.size(); ++i)
{
QMetaType::Type expected = argumentsTypes[i];
if (expected == QMetaType::QVariant)
continue;
QMetaType::Type actual = static_cast<QMetaType::Type>(argumentsValues[i].type());
if (expected != actual)
return false;
}
return true;
}
void DynamicSignal::_initSignature()
{
QString signature("%1(%2)");
QString arguments;
for (int i = 0; i < d->arguments.size(); ++i)
{
if (i != 0)
arguments += ',';
arguments += QMetaType::typeName(d->arguments[i]);
}
d->signature = signature.arg(d->name, arguments).toUtf8();
}

View File

@ -0,0 +1,30 @@
#pragma once
#include <QtCore/QMetaType>
#include <memory>
class SignalData;
class DynamicQObject;
class DynamicSignal
{
public:
DynamicSignal();
DynamicSignal(const QString& name, const QList<QMetaType::Type>& arguments);
DynamicSignal(const DynamicSignal& signal);
DynamicSignal& operator=(const DynamicSignal& signal);
~DynamicSignal();
bool isValid() const;
QString name() const;
QByteArray signature();
bool validate(const QVariantList& arguments);
static bool validate(const QList<QMetaType::Type>& argumentsTypes, const QVariantList& argumentsValues);
private:
void _initSignature();
std::unique_ptr<SignalData> d;
};

View File

@ -0,0 +1,98 @@
#include "DynamicSlot.h"
#include <QtCore/QDebug>
#include <QtCore/QString>
#include <QtCore/QVariant>
#include <QtCore/QMetaType>
#include <functional>
#include "private/qmetaobjectbuilder_p.h"
struct SlotData
{
QString name;
QMetaType::Type returnType;
QList<QMetaType::Type> argumentsTypes;
QByteArray signature;
};
DynamicSlot::DynamicSlot()
: d(nullptr)
{
}
DynamicSlot::DynamicSlot(const QString& name,
QMetaType::Type returnType,
const QList<QMetaType::Type>& argumentsTypes)
: d(new SlotData())
{
d->name = name;
d->returnType = returnType;
d->argumentsTypes = argumentsTypes;
_initSignature();
}
DynamicSlot::DynamicSlot(const DynamicSlot& slot)
{
if (slot.isValid())
{
d.reset(new SlotData());
*d = *slot.d;
}
else
d.reset(nullptr);
}
DynamicSlot& DynamicSlot::operator=(const DynamicSlot& slot)
{
if (slot.isValid())
{
d.reset(new SlotData());
*d = *slot.d;
}
else
d.reset(nullptr);
return *this;
}
DynamicSlot::~DynamicSlot()
{
}
QString DynamicSlot::name() const
{
return isValid() ? d->name : QString();
}
bool DynamicSlot::isValid() const
{
return d != nullptr;
}
QByteArray DynamicSlot::signature() const
{
return isValid() ? d->signature : QByteArray();
}
bool DynamicSlot::validate(const QVariantList& argumentsValues)
{
return true;
}
void DynamicSlot::execute(void** args)
{
}
void DynamicSlot::_initSignature()
{
QString signature("%1(%2)");
QString arguments = "";
for (int i = 0; i < d->argumentsTypes.size(); ++i)
{
if (i != 0)
arguments += ',';
arguments += QMetaType::typeName(d->argumentsTypes[i]);
}
d->signature = signature.arg(d->name, arguments).toUtf8();
}

View File

@ -0,0 +1,34 @@
#pragma once
#include <memory>
#include <functional>
#include <QtCore/QList>
#include <QtCore/QMetaType>
#include <QtCore/QVariant>
class SlotData;
class QString;
class DynamicSlot
{
public:
DynamicSlot();
DynamicSlot(const QString& name,
QMetaType::Type returnType,
const QList<QMetaType::Type>& argumentsTypes);
DynamicSlot(const DynamicSlot& slot);
DynamicSlot& operator=(const DynamicSlot& slot);
~DynamicSlot();
QString name() const;
bool isValid() const;
QByteArray signature() const;
bool validate(const QVariantList& argumentsValues);
void execute(void** args);
private:
void _initSignature();
std::unique_ptr<SlotData> d;
};

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,504 @@
#############################################################################
# Makefile for building: DynamicQObject
# Generated by qmake (3.0) (Qt 5.3.1)
# Project: ../DynamicQObject.pro
# Template: app
# Command: /usr/lib/qt/bin/qmake -o Makefile ../DynamicQObject.pro
#############################################################################
MAKEFILE = Makefile
####### Compiler, tools and options
CC = gcc
CXX = g++
DEFINES = -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_CORE_LIB
CFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -Wall -W -D_REENTRANT -fPIE $(DEFINES)
CXXFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -std=c++0x -Wall -W -D_REENTRANT -fPIE $(DEFINES)
INCPATH = -I/usr/lib/qt/mkspecs/linux-g++ -I../../DynamicQObject -I../../DynamicQObject -I../private -isystem /usr/include/qt -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I. -I.
LINK = g++
LFLAGS = -Wl,-O1,--sort-common,--as-needed,-z,relro -Wl,-O1
LIBS = $(SUBLIBS) -lQt5Gui -lQt5Core -lGL -lpthread
AR = ar cqs
RANLIB =
QMAKE = /usr/lib/qt/bin/qmake
TAR = tar -cf
COMPRESS = gzip -9f
COPY = cp -f
SED = sed
COPY_FILE = cp -f
COPY_DIR = cp -f -R
STRIP = strip
INSTALL_FILE = install -m 644 -p
INSTALL_DIR = $(COPY_DIR)
INSTALL_PROGRAM = install -m 755 -p
DEL_FILE = rm -f
SYMLINK = ln -f -s
DEL_DIR = rmdir
MOVE = mv -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
####### Output directory
OBJECTS_DIR = ./
####### Files
SOURCES = ../DynamicQObject.cpp \
../main.cpp \
../PrinterObject.cpp \
../dynamicmetaobject.cpp \
../private/qmetaobjectbuilder.cpp \
../private/qmetaobject.cpp \
../private/qmetatype.cpp \
../Signal.cpp \
../Slot.cpp moc_PrinterObject.cpp
OBJECTS = DynamicQObject.o \
main.o \
PrinterObject.o \
dynamicmetaobject.o \
qmetaobjectbuilder.o \
qmetaobject.o \
qmetatype.o \
Signal.o \
Slot.o \
moc_PrinterObject.o
DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/opengl.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DynamicQObject.pro ../DynamicQObject.cpp \
../main.cpp \
../PrinterObject.cpp \
../dynamicmetaobject.cpp \
../private/qmetaobjectbuilder.cpp \
../private/qmetaobject.cpp \
../private/qmetatype.cpp \
../Signal.cpp \
../Slot.cpp
QMAKE_TARGET = DynamicQObject
DESTDIR = #avoid trailing-slash linebreak
TARGET = DynamicQObject
first: all
####### Implicit rules
.SUFFIXES: .o .c .cpp .cc .cxx .C
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
####### Build rules
all: Makefile $(TARGET)
$(TARGET): $(OBJECTS)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
Makefile: ../DynamicQObject.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/opengl.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../DynamicQObject.pro \
/usr/lib/libQt5Gui.prl \
/usr/lib/libQt5Core.prl
$(QMAKE) -o Makefile ../DynamicQObject.pro
/usr/lib/qt/mkspecs/features/spec_pre.prf:
/usr/lib/qt/mkspecs/common/shell-unix.conf:
/usr/lib/qt/mkspecs/common/unix.conf:
/usr/lib/qt/mkspecs/common/linux.conf:
/usr/lib/qt/mkspecs/common/gcc-base.conf:
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
/usr/lib/qt/mkspecs/common/g++-base.conf:
/usr/lib/qt/mkspecs/common/g++-unix.conf:
/usr/lib/qt/mkspecs/qconfig.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
/usr/lib/qt/mkspecs/features/qt_functions.prf:
/usr/lib/qt/mkspecs/features/qt_config.prf:
/usr/lib/qt/mkspecs/linux-g++/qmake.conf:
/usr/lib/qt/mkspecs/features/spec_post.prf:
/usr/lib/qt/mkspecs/features/exclusive_builds.prf:
/usr/lib/qt/mkspecs/features/default_pre.prf:
/usr/lib/qt/mkspecs/features/resolve_config.prf:
/usr/lib/qt/mkspecs/features/default_post.prf:
/usr/lib/qt/mkspecs/features/c++11.prf:
/usr/lib/qt/mkspecs/features/warn_on.prf:
/usr/lib/qt/mkspecs/features/qt.prf:
/usr/lib/qt/mkspecs/features/resources.prf:
/usr/lib/qt/mkspecs/features/moc.prf:
/usr/lib/qt/mkspecs/features/unix/opengl.prf:
/usr/lib/qt/mkspecs/features/unix/thread.prf:
/usr/lib/qt/mkspecs/features/testcase_targets.prf:
/usr/lib/qt/mkspecs/features/exceptions.prf:
/usr/lib/qt/mkspecs/features/yacc.prf:
/usr/lib/qt/mkspecs/features/lex.prf:
../DynamicQObject.pro:
/usr/lib/libQt5Gui.prl:
/usr/lib/libQt5Core.prl:
qmake: FORCE
@$(QMAKE) -o Makefile ../DynamicQObject.pro
qmake_all: FORCE
dist:
@test -d .tmp/DynamicQObject1.0.0 || mkdir -p .tmp/DynamicQObject1.0.0
$(COPY_FILE) --parents $(DIST) .tmp/DynamicQObject1.0.0/ && $(COPY_FILE) --parents ../DynamicQObject.h ../PrinterObject.h ../dynamicmetaobject.h ../private/qmetaobjectbuilder_p.h ../private/qmetaobject_p.h ../private/qobject_p.h ../private/qmetaobject_moc_p.h ../private/qmetaobject.h ../private/qmetatype_p.h ../private/qmetatype.h ../private/qmetatypeswitcher_p.h ../Signal.h ../Slot.h .tmp/DynamicQObject1.0.0/ && $(COPY_FILE) --parents ../DynamicQObject.cpp ../main.cpp ../PrinterObject.cpp ../dynamicmetaobject.cpp ../private/qmetaobjectbuilder.cpp ../private/qmetaobject.cpp ../private/qmetatype.cpp ../Signal.cpp ../Slot.cpp .tmp/DynamicQObject1.0.0/ && (cd `dirname .tmp/DynamicQObject1.0.0` && $(TAR) DynamicQObject1.0.0.tar DynamicQObject1.0.0 && $(COMPRESS) DynamicQObject1.0.0.tar) && $(MOVE) `dirname .tmp/DynamicQObject1.0.0`/DynamicQObject1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/DynamicQObject1.0.0
clean:compiler_clean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) *~ core *.core
distclean: clean
-$(DEL_FILE) $(TARGET)
-$(DEL_FILE) Makefile
####### Sub-libraries
mocclean: compiler_moc_header_clean compiler_moc_source_clean
mocables: compiler_moc_header_make_all compiler_moc_source_make_all
check: first
compiler_rcc_make_all:
compiler_rcc_clean:
compiler_moc_header_make_all: moc_PrinterObject.cpp
compiler_moc_header_clean:
-$(DEL_FILE) moc_PrinterObject.cpp
moc_PrinterObject.cpp: ../PrinterObject.h
/usr/lib/qt/bin/moc $(DEFINES) -I/usr/lib/qt/mkspecs/linux-g++ -I/home/filippo/Projects/DynamicQObject -I/home/filippo/Projects/DynamicQObject -I/home/filippo/Projects/DynamicQObject/private -I/usr/include/qt -I/usr/include/qt/QtGui -I/usr/include/qt/QtCore -I. -I/usr/include/c++/4.9.0 -I/usr/include/c++/4.9.0/x86_64-unknown-linux-gnu -I/usr/include/c++/4.9.0/backward -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.0/include -I/usr/local/include -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.0/include-fixed -I/usr/include ../PrinterObject.h -o moc_PrinterObject.cpp
compiler_moc_source_make_all:
compiler_moc_source_clean:
compiler_yacc_decl_make_all:
compiler_yacc_decl_clean:
compiler_yacc_impl_make_all:
compiler_yacc_impl_clean:
compiler_lex_make_all:
compiler_lex_clean:
compiler_clean: compiler_moc_header_clean
####### Compile
DynamicQObject.o: ../DynamicQObject.cpp ../DynamicQObject.h \
../Signal.h \
../Slot.h \
../private/qmetaobjectbuilder_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o DynamicQObject.o ../DynamicQObject.cpp
main.o: ../main.cpp ../DynamicQObject.h \
../Signal.h \
../Slot.h \
../PrinterObject.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o main.o ../main.cpp
PrinterObject.o: ../PrinterObject.cpp ../PrinterObject.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o PrinterObject.o ../PrinterObject.cpp
dynamicmetaobject.o: ../dynamicmetaobject.cpp ../dynamicmetaobject.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o dynamicmetaobject.o ../dynamicmetaobject.cpp
qmetaobjectbuilder.o: ../private/qmetaobjectbuilder.cpp ../private/qmetaobjectbuilder_p.h \
../private/qobject_p.h \
../private/qmetaobject_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o qmetaobjectbuilder.o ../private/qmetaobjectbuilder.cpp
qmetaobject.o: ../private/qmetaobject.cpp ../private/qmetaobject.h \
../private/qmetatype.h \
../private/qmetaobject_p.h \
../private/qobject_p.h \
../private/qmetaobject_moc_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o qmetaobject.o ../private/qmetaobject.cpp
qmetatype.o: ../private/qmetatype.cpp ../private/qmetatype.h \
../private/qmetatype_p.h \
../private/qmetatypeswitcher_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o qmetatype.o ../private/qmetatype.cpp
Signal.o: ../Signal.cpp ../Signal.h \
../DynamicQObject.h \
../Slot.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o Signal.o ../Signal.cpp
Slot.o: ../Slot.cpp ../Slot.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o Slot.o ../Slot.cpp
moc_PrinterObject.o: moc_PrinterObject.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_PrinterObject.o moc_PrinterObject.cpp
####### Install
install: FORCE
uninstall: FORCE
FORCE:

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,88 @@
/****************************************************************************
** Meta object code from reading C++ file 'DynamicQObject.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.3.0)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../DynamicQObject.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'DynamicQObject.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.3.0. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_DynamicQObject_t {
QByteArrayData data[1];
char stringdata[15];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_DynamicQObject_t, stringdata) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_DynamicQObject_t qt_meta_stringdata_DynamicQObject = {
{
QT_MOC_LITERAL(0, 0, 14)
},
"DynamicQObject"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_DynamicQObject[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
0, 0, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
0 // eod
};
void DynamicQObject::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
Q_UNUSED(_o);
Q_UNUSED(_id);
Q_UNUSED(_c);
Q_UNUSED(_a);
}
const QMetaObject DynamicQObject::staticMetaObject = {
{ &QObject::staticMetaObject, qt_meta_stringdata_DynamicQObject.data,
qt_meta_data_DynamicQObject, qt_static_metacall, 0, 0}
};
const QMetaObject *DynamicQObject::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *DynamicQObject::qt_metacast(const char *_clname)
{
if (!_clname) return 0;
if (!strcmp(_clname, qt_meta_stringdata_DynamicQObject.stringdata))
return static_cast<void*>(const_cast< DynamicQObject*>(this));
return QObject::qt_metacast(_clname);
}
int DynamicQObject::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QObject::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
return _id;
}
QT_END_MOC_NAMESPACE

Binary file not shown.

View File

@ -0,0 +1,139 @@
/****************************************************************************
** Meta object code from reading C++ file 'PrinterObject.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.3.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../PrinterObject.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'PrinterObject.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.3.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_PrinterObject_t {
QByteArrayData data[7];
char stringdata[50];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_PrinterObject_t, stringdata) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_PrinterObject_t qt_meta_stringdata_PrinterObject = {
{
QT_MOC_LITERAL(0, 0, 13),
QT_MOC_LITERAL(1, 14, 6),
QT_MOC_LITERAL(2, 21, 0),
QT_MOC_LITERAL(3, 22, 5),
QT_MOC_LITERAL(4, 28, 7),
QT_MOC_LITERAL(5, 36, 5),
QT_MOC_LITERAL(6, 42, 7)
},
"PrinterObject\0signal\0\0print\0message\0"
"prova\0variant"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_PrinterObject[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
3, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
1, // signalCount
// signals: name, argc, parameters, tag, flags
1, 1, 29, 2, 0x06 /* Public */,
// slots: name, argc, parameters, tag, flags
3, 1, 32, 2, 0x0a /* Public */,
5, 1, 35, 2, 0x08 /* Private */,
// signals: parameters
QMetaType::Void, QMetaType::QString, 2,
// slots: parameters
QMetaType::Void, QMetaType::QString, 4,
QMetaType::Void, QMetaType::QVariant, 6,
0 // eod
};
void PrinterObject::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
PrinterObject *_t = static_cast<PrinterObject *>(_o);
switch (_id) {
case 0: _t->signal((*reinterpret_cast< QString(*)>(_a[1]))); break;
case 1: _t->print((*reinterpret_cast< const QString(*)>(_a[1]))); break;
case 2: _t->prova((*reinterpret_cast< const QVariant(*)>(_a[1]))); break;
default: ;
}
} else if (_c == QMetaObject::IndexOfMethod) {
int *result = reinterpret_cast<int *>(_a[0]);
void **func = reinterpret_cast<void **>(_a[1]);
{
typedef void (PrinterObject::*_t)(QString );
if (*reinterpret_cast<_t *>(func) == static_cast<_t>(&PrinterObject::signal)) {
*result = 0;
}
}
}
}
const QMetaObject PrinterObject::staticMetaObject = {
{ &QObject::staticMetaObject, qt_meta_stringdata_PrinterObject.data,
qt_meta_data_PrinterObject, qt_static_metacall, 0, 0}
};
const QMetaObject *PrinterObject::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *PrinterObject::qt_metacast(const char *_clname)
{
if (!_clname) return 0;
if (!strcmp(_clname, qt_meta_stringdata_PrinterObject.stringdata))
return static_cast<void*>(const_cast< PrinterObject*>(this));
return QObject::qt_metacast(_clname);
}
int PrinterObject::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QObject::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 3)
qt_static_metacall(this, _c, _id, _a);
_id -= 3;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 3)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 3;
}
return _id;
}
// SIGNAL 0
void PrinterObject::signal(QString _t1)
{
void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
QMetaObject::activate(this, &staticMetaObject, 0, _a);
}
QT_END_MOC_NAMESPACE

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,277 @@
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtCore module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia. For licensing terms and
** conditions see http://qt.digia.com/licensing. For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, 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.
**
** In addition, as a special exception, Digia gives you certain additional
** rights. These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** 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.
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QMETAOBJECT_H
#define QMETAOBJECT_H
#include <QtCore/qobjectdefs.h>
#include <QtCore/qvariant.h>
QT_BEGIN_NAMESPACE
template <typename T> class QList;
#define Q_METAMETHOD_INVOKE_MAX_ARGS 10
class Q_CORE_EXPORT QMetaMethod
{
public:
inline QMetaMethod() : mobj(0),handle(0) {}
QByteArray methodSignature() const;
QByteArray name() const;
const char *typeName() const;
int returnType() const;
int parameterCount() const;
int parameterType(int index) const;
void getParameterTypes(int *types) const;
QList<QByteArray> parameterTypes() const;
QList<QByteArray> parameterNames() const;
const char *tag() const;
enum Access { Private, Protected, Public };
Access access() const;
enum MethodType { Method, Signal, Slot, Constructor };
MethodType methodType() const;
enum Attributes { Compatibility = 0x1, Cloned = 0x2, Scriptable = 0x4 };
int attributes() const;
int methodIndex() const;
int revision() const;
inline const QMetaObject *enclosingMetaObject() const { return mobj; }
bool invoke(QObject *object,
Qt::ConnectionType connectionType,
QGenericReturnArgument returnValue,
QGenericArgument val0 = QGenericArgument(0),
QGenericArgument val1 = QGenericArgument(),
QGenericArgument val2 = QGenericArgument(),
QGenericArgument val3 = QGenericArgument(),
QGenericArgument val4 = QGenericArgument(),
QGenericArgument val5 = QGenericArgument(),
QGenericArgument val6 = QGenericArgument(),
QGenericArgument val7 = QGenericArgument(),
QGenericArgument val8 = QGenericArgument(),
QGenericArgument val9 = QGenericArgument()) const;
inline bool invoke(QObject *object,
QGenericReturnArgument returnValue,
QGenericArgument val0 = QGenericArgument(0),
QGenericArgument val1 = QGenericArgument(),
QGenericArgument val2 = QGenericArgument(),
QGenericArgument val3 = QGenericArgument(),
QGenericArgument val4 = QGenericArgument(),
QGenericArgument val5 = QGenericArgument(),
QGenericArgument val6 = QGenericArgument(),
QGenericArgument val7 = QGenericArgument(),
QGenericArgument val8 = QGenericArgument(),
QGenericArgument val9 = QGenericArgument()) const
{
return invoke(object, Qt::AutoConnection, returnValue,
val0, val1, val2, val3, val4, val5, val6, val7, val8, val9);
}
inline bool invoke(QObject *object,
Qt::ConnectionType connectionType,
QGenericArgument val0 = QGenericArgument(0),
QGenericArgument val1 = QGenericArgument(),
QGenericArgument val2 = QGenericArgument(),
QGenericArgument val3 = QGenericArgument(),
QGenericArgument val4 = QGenericArgument(),
QGenericArgument val5 = QGenericArgument(),
QGenericArgument val6 = QGenericArgument(),
QGenericArgument val7 = QGenericArgument(),
QGenericArgument val8 = QGenericArgument(),
QGenericArgument val9 = QGenericArgument()) const
{
return invoke(object, connectionType, QGenericReturnArgument(),
val0, val1, val2, val3, val4, val5, val6, val7, val8, val9);
}
inline bool invoke(QObject *object,
QGenericArgument val0 = QGenericArgument(0),
QGenericArgument val1 = QGenericArgument(),
QGenericArgument val2 = QGenericArgument(),
QGenericArgument val3 = QGenericArgument(),
QGenericArgument val4 = QGenericArgument(),
QGenericArgument val5 = QGenericArgument(),
QGenericArgument val6 = QGenericArgument(),
QGenericArgument val7 = QGenericArgument(),
QGenericArgument val8 = QGenericArgument(),
QGenericArgument val9 = QGenericArgument()) const
{
return invoke(object, Qt::AutoConnection, QGenericReturnArgument(),
val0, val1, val2, val3, val4, val5, val6, val7, val8, val9);
}
inline bool isValid() const { return mobj != 0; }
#ifdef Q_QDOC
static QMetaMethod fromSignal(PointerToMemberFunction signal);
#else
template <typename Func>
static inline QMetaMethod fromSignal(Func signal)
{
typedef QtPrivate::FunctionPointer<Func> SignalType;
Q_STATIC_ASSERT_X(QtPrivate::HasQ_OBJECT_Macro<typename SignalType::Object>::Value,
"No Q_OBJECT in the class with the signal");
return fromSignalImpl(&SignalType::Object::staticMetaObject,
reinterpret_cast<void **>(&signal));
}
#endif
private:
#if QT_DEPRECATED_SINCE(5,0)
// signature() has been renamed to methodSignature() in Qt 5.
// Warning, that function returns a QByteArray; check the life time if
// you convert to char*.
char *signature(struct renamedInQt5_warning_checkTheLifeTime * = 0) Q_DECL_EQ_DELETE;
#endif
static QMetaMethod fromSignalImpl(const QMetaObject *, void **);
const QMetaObject *mobj;
uint handle;
friend class QMetaMethodPrivate;
friend struct QMetaObject;
friend struct QMetaObjectPrivate;
friend class QObject;
friend bool operator==(const QMetaMethod &m1, const QMetaMethod &m2);
friend bool operator!=(const QMetaMethod &m1, const QMetaMethod &m2);
};
Q_DECLARE_TYPEINFO(QMetaMethod, Q_MOVABLE_TYPE);
inline bool operator==(const QMetaMethod &m1, const QMetaMethod &m2)
{ return m1.mobj == m2.mobj && m1.handle == m2.handle; }
inline bool operator!=(const QMetaMethod &m1, const QMetaMethod &m2)
{ return !(m1 == m2); }
class Q_CORE_EXPORT QMetaEnum
{
public:
inline QMetaEnum() : mobj(0),handle(0) {}
const char *name() const;
bool isFlag() const;
int keyCount() const;
const char *key(int index) const;
int value(int index) const;
const char *scope() const;
int keyToValue(const char *key, bool *ok = 0) const;
const char* valueToKey(int value) const;
int keysToValue(const char * keys, bool *ok = 0) const;
QByteArray valueToKeys(int value) const;
inline const QMetaObject *enclosingMetaObject() const { return mobj; }
inline bool isValid() const { return name() != 0; }
private:
const QMetaObject *mobj;
uint handle;
friend struct QMetaObject;
};
Q_DECLARE_TYPEINFO(QMetaEnum, Q_MOVABLE_TYPE);
class Q_CORE_EXPORT QMetaProperty
{
public:
QMetaProperty();
const char *name() const;
const char *typeName() const;
QVariant::Type type() const;
int userType() const;
int propertyIndex() const;
bool isReadable() const;
bool isWritable() const;
bool isResettable() const;
bool isDesignable(const QObject *obj = 0) const;
bool isScriptable(const QObject *obj = 0) const;
bool isStored(const QObject *obj = 0) const;
bool isEditable(const QObject *obj = 0) const;
bool isUser(const QObject *obj = 0) const;
bool isConstant() const;
bool isFinal() const;
bool isFlagType() const;
bool isEnumType() const;
QMetaEnum enumerator() const;
bool hasNotifySignal() const;
QMetaMethod notifySignal() const;
int notifySignalIndex() const;
int revision() const;
QVariant read(const QObject *obj) const;
bool write(QObject *obj, const QVariant &value) const;
bool reset(QObject *obj) const;
bool hasStdCppSet() const;
inline bool isValid() const { return isReadable(); }
inline const QMetaObject *enclosingMetaObject() const { return mobj; }
private:
const QMetaObject *mobj;
uint handle;
int idx;
QMetaEnum menum;
friend struct QMetaObject;
friend struct QMetaObjectPrivate;
};
class Q_CORE_EXPORT QMetaClassInfo
{
public:
inline QMetaClassInfo() : mobj(0),handle(0) {}
const char *name() const;
const char *value() const;
inline const QMetaObject *enclosingMetaObject() const { return mobj; }
private:
const QMetaObject *mobj;
uint handle;
friend struct QMetaObject;
};
Q_DECLARE_TYPEINFO(QMetaClassInfo, Q_MOVABLE_TYPE);
QT_END_NAMESPACE
#endif // QMETAOBJECT_H

View File

@ -0,0 +1,208 @@
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtCore module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia. For licensing terms and
** conditions see http://qt.digia.com/licensing. For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, 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.
**
** In addition, as a special exception, Digia gives you certain additional
** rights. These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** 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.
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
#if !defined(QMETAOBJECT_P_H) && !defined(UTILS_H)
# error "Include qmetaobject_p.h (or moc's utils.h) before including this file."
#endif
QT_BEGIN_NAMESPACE
// This function is shared with moc.cpp. This file should be included where needed.
static QByteArray normalizeTypeInternal(const char *t, const char *e, bool fixScope = false, bool adjustConst = true)
{
int len = e - t;
/*
Convert 'char const *' into 'const char *'. Start at index 1,
not 0, because 'const char *' is already OK.
*/
QByteArray constbuf;
for (int i = 1; i < len; i++) {
if ( t[i] == 'c'
&& strncmp(t + i + 1, "onst", 4) == 0
&& (i + 5 >= len || !is_ident_char(t[i + 5]))
&& !is_ident_char(t[i-1])
) {
constbuf = QByteArray(t, len);
if (is_space(t[i-1]))
constbuf.remove(i-1, 6);
else
constbuf.remove(i, 5);
constbuf.prepend("const ");
t = constbuf.data();
e = constbuf.data() + constbuf.length();
break;
}
/*
We mustn't convert 'char * const *' into 'const char **'
and we must beware of 'Bar<const Bla>'.
*/
if (t[i] == '&' || t[i] == '*' ||t[i] == '<')
break;
}
if (adjustConst && e > t + 6 && strncmp("const ", t, 6) == 0) {
if (*(e-1) == '&') { // treat const reference as value
t += 6;
--e;
} else if (is_ident_char(*(e-1)) || *(e-1) == '>') { // treat const value as value
t += 6;
}
}
QByteArray result;
result.reserve(len);
#if 1
// consume initial 'const '
if (strncmp("const ", t, 6) == 0) {
t+= 6;
result += "const ";
}
#endif
// some type substitutions for 'unsigned x'
if (strncmp("unsigned", t, 8) == 0) {
// make sure "unsigned" is an isolated word before making substitutions
if (!t[8] || !is_ident_char(t[8])) {
if (strncmp(" int", t+8, 4) == 0) {
t += 8+4;
result += "uint";
} else if (strncmp(" long", t+8, 5) == 0) {
if ((strlen(t + 8 + 5) < 4 || strncmp(t + 8 + 5, " int", 4) != 0) // preserve '[unsigned] long int'
&& (strlen(t + 8 + 5) < 5 || strncmp(t + 8 + 5, " long", 5) != 0) // preserve '[unsigned] long long'
) {
t += 8+5;
result += "ulong";
}
} else if (strncmp(" short", t+8, 6) != 0 // preserve unsigned short
&& strncmp(" char", t+8, 5) != 0) { // preserve unsigned char
// treat rest (unsigned) as uint
t += 8;
result += "uint";
}
}
} else {
// discard 'struct', 'class', and 'enum'; they are optional
// and we don't want them in the normalized signature
struct {
const char *keyword;
int len;
} optional[] = {
{ "struct ", 7 },
{ "class ", 6 },
{ "enum ", 5 },
{ 0, 0 }
};
int i = 0;
do {
if (strncmp(optional[i].keyword, t, optional[i].len) == 0) {
t += optional[i].len;
break;
}
} while (optional[++i].keyword != 0);
}
bool star = false;
while (t != e) {
char c = *t++;
if (fixScope && c == ':' && *t == ':' ) {
++t;
c = *t++;
int i = result.size() - 1;
while (i >= 0 && is_ident_char(result.at(i)))
--i;
result.resize(i + 1);
}
star = star || c == '*';
result += c;
if (c == '<') {
//template recursion
const char* tt = t;
int templdepth = 1;
int scopeDepth = 0;
while (t != e) {
c = *t++;
if (c == '{' || c == '(' || c == '[')
++scopeDepth;
if (c == '}' || c == ')' || c == ']')
--scopeDepth;
if (scopeDepth == 0) {
if (c == '<')
++templdepth;
if (c == '>')
--templdepth;
if (templdepth == 0 || (templdepth == 1 && c == ',')) {
result += normalizeTypeInternal(tt, t-1, fixScope, false);
result += c;
if (templdepth == 0) {
if (*t == '>')
result += ' '; // avoid >>
break;
}
tt = t;
}
}
}
}
// cv qualifers can appear after the type as well
if (!is_ident_char(c) && t != e && (e - t >= 5 && strncmp("const", t, 5) == 0)
&& (e - t == 5 || !is_ident_char(t[5]))) {
t += 5;
while (t != e && is_space(*t))
++t;
if (adjustConst && t != e && *t == '&') {
// treat const ref as value
++t;
} else if (adjustConst && !star) {
// treat const as value
} else if (!star) {
// move const to the front (but not if const comes after a *)
result.prepend("const ");
} else {
// keep const after a *
result += "const";
}
}
}
return result;
}
QT_END_NAMESPACE

View File

@ -0,0 +1,269 @@
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtCore module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia. For licensing terms and
** conditions see http://qt.digia.com/licensing. For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, 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.
**
** In addition, as a special exception, Digia gives you certain additional
** rights. These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** 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.
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QMETAOBJECT_P_H
#define QMETAOBJECT_P_H
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists for the convenience
// of moc. This header file may change from version to version without notice,
// or even be removed.
//
// We mean it.
//
#include <QtCore/qglobal.h>
#include <QtCore/qobjectdefs.h>
#ifndef QT_NO_QOBJECT
#include <private/qobject_p.h> // For QObjectPrivate::Connection
#endif
#include <QtCore/qvarlengtharray.h>
QT_BEGIN_NAMESPACE
enum PropertyFlags {
Invalid = 0x00000000,
Readable = 0x00000001,
Writable = 0x00000002,
Resettable = 0x00000004,
EnumOrFlag = 0x00000008,
StdCppSet = 0x00000100,
// Override = 0x00000200,
Constant = 0x00000400,
Final = 0x00000800,
Designable = 0x00001000,
ResolveDesignable = 0x00002000,
Scriptable = 0x00004000,
ResolveScriptable = 0x00008000,
Stored = 0x00010000,
ResolveStored = 0x00020000,
Editable = 0x00040000,
ResolveEditable = 0x00080000,
User = 0x00100000,
ResolveUser = 0x00200000,
Notify = 0x00400000,
Revisioned = 0x00800000
};
enum MethodFlags {
AccessPrivate = 0x00,
AccessProtected = 0x01,
AccessPublic = 0x02,
AccessMask = 0x03, //mask
MethodMethod = 0x00,
MethodSignal = 0x04,
MethodSlot = 0x08,
MethodConstructor = 0x0c,
MethodTypeMask = 0x0c,
MethodCompatibility = 0x10,
MethodCloned = 0x20,
MethodScriptable = 0x40,
MethodRevisioned = 0x80
};
enum MetaObjectFlags {
DynamicMetaObject = 0x01,
RequiresVariantMetaObject = 0x02
};
enum MetaDataFlags {
IsUnresolvedType = 0x80000000,
TypeNameIndexMask = 0x7FFFFFFF
};
extern int qMetaTypeTypeInternal(const char *);
class QArgumentType
{
public:
QArgumentType(int type)
: _type(type)
{}
QArgumentType(const QByteArray &name)
: _type(qMetaTypeTypeInternal(name.constData())), _name(name)
{}
QArgumentType()
: _type(0)
{}
int type() const
{ return _type; }
QByteArray name() const
{
if (_type && _name.isEmpty())
const_cast<QArgumentType *>(this)->_name = QMetaType::typeName(_type);
return _name;
}
bool operator==(const QArgumentType &other) const
{
if (_type)
return _type == other._type;
else if (other._type)
return false;
else
return _name == other._name;
}
bool operator!=(const QArgumentType &other) const
{
if (_type)
return _type != other._type;
else if (other._type)
return true;
else
return _name != other._name;
}
private:
int _type;
QByteArray _name;
};
typedef QVarLengthArray<QArgumentType, 10> QArgumentTypeArray;
class QMetaMethodPrivate;
class QMutex;
struct QMetaObjectPrivate
{
enum { OutputRevision = 7 }; // Used by moc, qmetaobjectbuilder and qdbus
int revision;
int className;
int classInfoCount, classInfoData;
int methodCount, methodData;
int propertyCount, propertyData;
int enumeratorCount, enumeratorData;
int constructorCount, constructorData; //since revision 2
int flags; //since revision 3
int signalCount; //since revision 4
// revision 5 introduces changes in normalized signatures, no new members
// revision 6 added qt_static_metacall as a member of each Q_OBJECT and inside QMetaObject itself
// revision 7 is Qt 5
static inline const QMetaObjectPrivate *get(const QMetaObject *metaobject)
{ return reinterpret_cast<const QMetaObjectPrivate*>(metaobject->d.data); }
static int originalClone(const QMetaObject *obj, int local_method_index);
static QByteArray decodeMethodSignature(const char *signature,
QArgumentTypeArray &types);
static int indexOfSignalRelative(const QMetaObject **baseObject,
const QByteArray &name, int argc,
const QArgumentType *types);
static int indexOfSlotRelative(const QMetaObject **m,
const QByteArray &name, int argc,
const QArgumentType *types);
static int indexOfSignal(const QMetaObject *m, const QByteArray &name,
int argc, const QArgumentType *types);
static int indexOfSlot(const QMetaObject *m, const QByteArray &name,
int argc, const QArgumentType *types);
static int indexOfMethod(const QMetaObject *m, const QByteArray &name,
int argc, const QArgumentType *types);
static int indexOfConstructor(const QMetaObject *m, const QByteArray &name,
int argc, const QArgumentType *types);
Q_CORE_EXPORT static QMetaMethod signal(const QMetaObject *m, int signal_index);
Q_CORE_EXPORT static int signalOffset(const QMetaObject *m);
Q_CORE_EXPORT static int absoluteSignalCount(const QMetaObject *m);
Q_CORE_EXPORT static int signalIndex(const QMetaMethod &m);
static bool checkConnectArgs(int signalArgc, const QArgumentType *signalTypes,
int methodArgc, const QArgumentType *methodTypes);
static bool checkConnectArgs(const QMetaMethodPrivate *signal,
const QMetaMethodPrivate *method);
static QList<QByteArray> parameterTypeNamesFromSignature(const char *signature);
#ifndef QT_NO_QOBJECT
//defined in qobject.cpp
enum DisconnectType { DisconnectAll, DisconnectOne };
static void memberIndexes(const QObject *obj, const QMetaMethod &member,
int *signalIndex, int *methodIndex);
static QObjectPrivate::Connection *connect(const QObject *sender, int signal_index,
const QMetaObject *smeta,
const QObject *receiver, int method_index_relative,
const QMetaObject *rmeta = 0,
int type = 0, int *types = 0);
static bool disconnect(const QObject *sender, int signal_index,
const QMetaObject *smeta,
const QObject *receiver, int method_index, void **slot,
DisconnectType = DisconnectAll);
static inline bool disconnectHelper(QObjectPrivate::Connection *c,
const QObject *receiver, int method_index, void **slot,
QMutex *senderMutex, DisconnectType = DisconnectAll);
#endif
};
// For meta-object generators
enum { MetaObjectPrivateFieldCount = sizeof(QMetaObjectPrivate) / sizeof(int) };
#ifndef UTILS_H
// mirrored in moc's utils.h
static inline bool is_ident_char(char s)
{
return ((s >= 'a' && s <= 'z')
|| (s >= 'A' && s <= 'Z')
|| (s >= '0' && s <= '9')
|| s == '_'
);
}
static inline bool is_space(char s)
{
return (s == ' ' || s == '\t');
}
#endif
/*
This function is shared with moc.cpp. The implementation lives in qmetaobject_moc_p.h, which
should be included where needed. The declaration here is not used to avoid warnings from
the compiler about unused functions.
static QByteArray normalizeTypeInternal(const char *t, const char *e, bool fixScope = false, bool adjustConst = true);
*/
QT_END_NAMESPACE
#endif

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,346 @@
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtCore module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia. For licensing terms and
** conditions see http://qt.digia.com/licensing. For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, 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.
**
** In addition, as a special exception, Digia gives you certain additional
** rights. These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** 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.
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QMETAOBJECTBUILDER_P_H
#define QMETAOBJECTBUILDER_P_H
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists for the convenience
// of moc. This header file may change from version to version without notice,
// or even be removed.
//
// We mean it.
//
#include <QtCore/qobject.h>
#include <QtCore/qmetaobject.h>
#include <QtCore/qdatastream.h>
#include <QtCore/qhash.h>
#include <QtCore/qmap.h>
QT_BEGIN_NAMESPACE
class QMetaObjectBuilderPrivate;
class QMetaMethodBuilder;
class QMetaMethodBuilderPrivate;
class QMetaPropertyBuilder;
class QMetaPropertyBuilderPrivate;
class QMetaEnumBuilder;
class QMetaEnumBuilderPrivate;
class Q_CORE_EXPORT QMetaObjectBuilder
{
public:
enum AddMember
{
ClassName = 0x00000001,
SuperClass = 0x00000002,
Methods = 0x00000004,
Signals = 0x00000008,
Slots = 0x00000010,
Constructors = 0x00000020,
Properties = 0x00000040,
Enumerators = 0x00000080,
ClassInfos = 0x00000100,
RelatedMetaObjects = 0x00000200,
StaticMetacall = 0x00000400,
PublicMethods = 0x00000800,
ProtectedMethods = 0x00001000,
PrivateMethods = 0x00002000,
AllMembers = 0x7FFFFFFF,
AllPrimaryMembers = 0x7FFFFBFC
};
Q_DECLARE_FLAGS(AddMembers, AddMember)
enum MetaObjectFlag {
DynamicMetaObject = 0x01
};
Q_DECLARE_FLAGS(MetaObjectFlags, MetaObjectFlag)
QMetaObjectBuilder();
explicit QMetaObjectBuilder(const QMetaObject *prototype, QMetaObjectBuilder::AddMembers members = AllMembers);
virtual ~QMetaObjectBuilder();
QByteArray className() const;
void setClassName(const QByteArray& name);
const QMetaObject *superClass() const;
void setSuperClass(const QMetaObject *meta);
MetaObjectFlags flags() const;
void setFlags(MetaObjectFlags);
int methodCount() const;
int constructorCount() const;
int propertyCount() const;
int enumeratorCount() const;
int classInfoCount() const;
int relatedMetaObjectCount() const;
QMetaMethodBuilder addMethod(const QByteArray& signature);
QMetaMethodBuilder addMethod(const QByteArray& signature, const QByteArray& returnType);
QMetaMethodBuilder addMethod(const QMetaMethod& prototype);
QMetaMethodBuilder addSlot(const QByteArray& signature);
QMetaMethodBuilder addSignal(const QByteArray& signature);
QMetaMethodBuilder addConstructor(const QByteArray& signature);
QMetaMethodBuilder addConstructor(const QMetaMethod& prototype);
QMetaPropertyBuilder addProperty(const QByteArray& name, const QByteArray& type, int notifierId=-1);
QMetaPropertyBuilder addProperty(const QMetaProperty& prototype);
QMetaEnumBuilder addEnumerator(const QByteArray& name);
QMetaEnumBuilder addEnumerator(const QMetaEnum& prototype);
int addClassInfo(const QByteArray& name, const QByteArray& value);
int addRelatedMetaObject(const QMetaObject *meta);
void addMetaObject(const QMetaObject *prototype, QMetaObjectBuilder::AddMembers members = AllMembers);
QMetaMethodBuilder method(int index) const;
QMetaMethodBuilder constructor(int index) const;
QMetaPropertyBuilder property(int index) const;
QMetaEnumBuilder enumerator(int index) const;
const QMetaObject *relatedMetaObject(int index) const;
QByteArray classInfoName(int index) const;
QByteArray classInfoValue(int index) const;
void removeMethod(int index);
void removeConstructor(int index);
void removeProperty(int index);
void removeEnumerator(int index);
void removeClassInfo(int index);
void removeRelatedMetaObject(int index);
int indexOfMethod(const QByteArray& signature);
int indexOfSignal(const QByteArray& signature);
int indexOfSlot(const QByteArray& signature);
int indexOfConstructor(const QByteArray& signature);
int indexOfProperty(const QByteArray& name);
int indexOfEnumerator(const QByteArray& name);
int indexOfClassInfo(const QByteArray& name);
typedef void (*StaticMetacallFunction)(QObject *, QMetaObject::Call, int, void **);
QMetaObjectBuilder::StaticMetacallFunction staticMetacallFunction() const;
void setStaticMetacallFunction(QMetaObjectBuilder::StaticMetacallFunction value);
QMetaObject *toMetaObject() const;
QByteArray toRelocatableData(bool * = 0) const;
static void fromRelocatableData(QMetaObject *, const QMetaObject *, const QByteArray &);
#ifndef QT_NO_DATASTREAM
void serialize(QDataStream& stream) const;
void deserialize
(QDataStream& stream,
const QMap<QByteArray, const QMetaObject *>& references);
#endif
private:
Q_DISABLE_COPY(QMetaObjectBuilder)
QMetaObjectBuilderPrivate *d;
friend class QMetaMethodBuilder;
friend class QMetaPropertyBuilder;
friend class QMetaEnumBuilder;
};
class Q_CORE_EXPORT QMetaMethodBuilder
{
public:
QMetaMethodBuilder() : _mobj(0), _index(0) {}
int index() const;
QMetaMethod::MethodType methodType() const;
QByteArray signature() const;
QByteArray returnType() const;
void setReturnType(const QByteArray& value);
QList<QByteArray> parameterTypes() const;
QList<QByteArray> parameterNames() const;
void setParameterNames(const QList<QByteArray>& value);
QByteArray tag() const;
void setTag(const QByteArray& value);
QMetaMethod::Access access() const;
void setAccess(QMetaMethod::Access value);
int attributes() const;
void setAttributes(int value);
int revision() const;
void setRevision(int revision);
private:
const QMetaObjectBuilder *_mobj;
int _index;
friend class QMetaObjectBuilder;
friend class QMetaPropertyBuilder;
QMetaMethodBuilder(const QMetaObjectBuilder *mobj, int index)
: _mobj(mobj), _index(index) {}
QMetaMethodBuilderPrivate *d_func() const;
};
class Q_CORE_EXPORT QMetaPropertyBuilder
{
public:
QMetaPropertyBuilder() : _mobj(0), _index(0) {}
int index() const { return _index; }
QByteArray name() const;
QByteArray type() const;
bool hasNotifySignal() const;
QMetaMethodBuilder notifySignal() const;
void setNotifySignal(const QMetaMethodBuilder& value);
void removeNotifySignal();
bool isReadable() const;
bool isWritable() const;
bool isResettable() const;
bool isDesignable() const;
bool isScriptable() const;
bool isStored() const;
bool isEditable() const;
bool isUser() const;
bool hasStdCppSet() const;
bool isEnumOrFlag() const;
bool isConstant() const;
bool isFinal() const;
void setReadable(bool value);
void setWritable(bool value);
void setResettable(bool value);
void setDesignable(bool value);
void setScriptable(bool value);
void setStored(bool value);
void setEditable(bool value);
void setUser(bool value);
void setStdCppSet(bool value);
void setEnumOrFlag(bool value);
void setConstant(bool value);
void setFinal(bool value);
int revision() const;
void setRevision(int revision);
private:
const QMetaObjectBuilder *_mobj;
int _index;
friend class QMetaObjectBuilder;
QMetaPropertyBuilder(const QMetaObjectBuilder *mobj, int index)
: _mobj(mobj), _index(index) {}
QMetaPropertyBuilderPrivate *d_func() const;
};
class Q_CORE_EXPORT QMetaEnumBuilder
{
public:
QMetaEnumBuilder() : _mobj(0), _index(0) {}
int index() const { return _index; }
QByteArray name() const;
bool isFlag() const;
void setIsFlag(bool value);
int keyCount() const;
QByteArray key(int index) const;
int value(int index) const;
int addKey(const QByteArray& name, int value);
void removeKey(int index);
private:
const QMetaObjectBuilder *_mobj;
int _index;
friend class QMetaObjectBuilder;
QMetaEnumBuilder(const QMetaObjectBuilder *mobj, int index)
: _mobj(mobj), _index(index) {}
QMetaEnumBuilderPrivate *d_func() const;
};
class Q_CORE_EXPORT QMetaStringTable
{
public:
explicit QMetaStringTable(const QByteArray &className);
int enter(const QByteArray &value);
static int preferredAlignment();
int blobSize() const;
void writeBlob(char *out) const;
private:
typedef QHash<QByteArray, int> Entries; // string --> index mapping
Entries m_entries;
int m_index;
QByteArray m_className;
};
Q_DECLARE_OPERATORS_FOR_FLAGS(QMetaObjectBuilder::AddMembers)
Q_DECLARE_OPERATORS_FOR_FLAGS(QMetaObjectBuilder::MetaObjectFlags)
QT_END_NAMESPACE
#endif

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,255 @@
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtCore module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia. For licensing terms and
** conditions see http://qt.digia.com/licensing. For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, 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.
**
** In addition, as a special exception, Digia gives you certain additional
** rights. These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** 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.
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QMETATYPE_P_H
#define QMETATYPE_P_H
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
//
#include "qmetatype.h"
QT_BEGIN_NAMESPACE
namespace QModulesPrivate {
enum Names { Core, Gui, Widgets, Unknown, ModulesCount /* ModulesCount has to be at the end */ };
static inline int moduleForType(const uint typeId)
{
if (typeId <= QMetaType::LastCoreType)
return Core;
if (typeId >= QMetaType::FirstGuiType && typeId <= QMetaType::LastGuiType)
return Gui;
if (typeId >= QMetaType::FirstWidgetsType && typeId <= QMetaType::LastWidgetsType)
return Widgets;
return Unknown;
}
template <typename T>
class QTypeModuleInfo
{
public:
enum Module {
IsCore = !QTypeInfo<T>::isComplex, // Primitive types are in Core
IsWidget = false,
IsGui = false,
IsUnknown = !IsCore
};
};
#define QT_ASSIGN_TYPE_TO_MODULE(TYPE, MODULE) \
template<> \
class QTypeModuleInfo<TYPE > \
{ \
public: \
enum Module { \
IsCore = (((MODULE) == (QModulesPrivate::Core))), \
IsWidget = (((MODULE) == (QModulesPrivate::Widgets))), \
IsGui = (((MODULE) == (QModulesPrivate::Gui))), \
IsUnknown = !(IsCore || IsWidget || IsGui) \
}; \
static inline int module() { return MODULE; } \
Q_STATIC_ASSERT((IsUnknown && !(IsCore || IsWidget || IsGui)) \
|| (IsCore && !(IsUnknown || IsWidget || IsGui)) \
|| (IsWidget && !(IsUnknown || IsCore || IsGui)) \
|| (IsGui && !(IsUnknown || IsCore || IsWidget))); \
};
#define QT_DECLARE_CORE_MODULE_TYPES_ITER(TypeName, TypeId, Name) \
QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Core);
#define QT_DECLARE_GUI_MODULE_TYPES_ITER(TypeName, TypeId, Name) \
QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Gui);
#define QT_DECLARE_WIDGETS_MODULE_TYPES_ITER(TypeName, TypeId, Name) \
QT_ASSIGN_TYPE_TO_MODULE(Name, QModulesPrivate::Widgets);
QT_FOR_EACH_STATIC_CORE_CLASS(QT_DECLARE_CORE_MODULE_TYPES_ITER)
QT_FOR_EACH_STATIC_CORE_TEMPLATE(QT_DECLARE_CORE_MODULE_TYPES_ITER)
QT_FOR_EACH_STATIC_GUI_CLASS(QT_DECLARE_GUI_MODULE_TYPES_ITER)
QT_FOR_EACH_STATIC_WIDGETS_CLASS(QT_DECLARE_WIDGETS_MODULE_TYPES_ITER)
} // namespace QModulesPrivate
#undef QT_DECLARE_CORE_MODULE_TYPES_ITER
#undef QT_DECLARE_GUI_MODULE_TYPES_ITER
#undef QT_DECLARE_WIDGETS_MODULE_TYPES_ITER
class QMetaTypeInterface
{
public:
QMetaType::Creator creator;
QMetaType::Deleter deleter;
QMetaType::SaveOperator saveOp;
QMetaType::LoadOperator loadOp;
QMetaType::Constructor constructor;
QMetaType::Destructor destructor;
int size;
quint32 flags; // same as QMetaType::TypeFlags
const QMetaObject *metaObject;
};
#ifndef QT_NO_DATASTREAM
# define QT_METATYPE_INTERFACE_INIT_DATASTREAM_IMPL(Type) \
/*saveOp*/(QtMetaTypePrivate::QMetaTypeFunctionHelper<Type, QtMetaTypePrivate::TypeDefinition<Type>::IsAvailable>::Save), \
/*loadOp*/(QtMetaTypePrivate::QMetaTypeFunctionHelper<Type, QtMetaTypePrivate::TypeDefinition<Type>::IsAvailable>::Load),
# define QT_METATYPE_INTERFACE_INIT_EMPTY_DATASTREAM_IMPL(Type) \
/*saveOp*/ 0, \
/*loadOp*/ 0,
#else
# define QT_METATYPE_INTERFACE_INIT_EMPTY_DATASTREAM_IMPL(Type) \
/*saveOp*/ 0, \
/*loadOp*/ 0,
# define QT_METATYPE_INTERFACE_INIT_DATASTREAM_IMPL(Type) \
QT_METATYPE_INTERFACE_INIT_EMPTY_DATASTREAM_IMPL(Type)
#endif
#ifndef QT_BOOTSTRAPPED
#define METAOBJECT_DELEGATE(Type) (QtPrivate::MetaObjectForType<Type>::value())
#else
#define METAOBJECT_DELEGATE(Type) 0
#endif
#define QT_METATYPE_INTERFACE_INIT_IMPL(Type, DATASTREAM_DELEGATE) \
{ \
/*creator*/(QtMetaTypePrivate::QMetaTypeFunctionHelper<Type, QtMetaTypePrivate::TypeDefinition<Type>::IsAvailable>::Create), \
/*deleter*/(QtMetaTypePrivate::QMetaTypeFunctionHelper<Type, QtMetaTypePrivate::TypeDefinition<Type>::IsAvailable>::Delete), \
DATASTREAM_DELEGATE(Type) \
/*constructor*/(QtMetaTypePrivate::QMetaTypeFunctionHelper<Type, QtMetaTypePrivate::TypeDefinition<Type>::IsAvailable>::Construct), \
/*destructor*/(QtMetaTypePrivate::QMetaTypeFunctionHelper<Type, QtMetaTypePrivate::TypeDefinition<Type>::IsAvailable>::Destruct), \
/*size*/(QTypeInfo<Type>::sizeOf), \
/*flags*/QtPrivate::QMetaTypeTypeFlags<Type>::Flags, \
/*metaObject*/METAOBJECT_DELEGATE(Type) \
}
/* These QT_METATYPE_INTERFACE_INIT* macros are used to initialize QMetaTypeInterface instance.
- QT_METATYPE_INTERFACE_INIT(Type) -> It takes Type argument and creates all necessary wrapper functions for the Type,
it detects if QT_NO_DATASTREAM was defined. Probably it is the macro that you want to use.
- QT_METATYPE_INTERFACE_INIT_EMPTY() -> It initializes an empty QMetaTypeInterface instance.
- QT_METATYPE_INTERFACE_INIT_NO_DATASTREAM(Type) -> Temporary workaround for missing auto-detection of data stream
operators. It creates same instance as QT_METATYPE_INTERFACE_INIT(Type) but with null stream operators callbacks.
*/
#define QT_METATYPE_INTERFACE_INIT(Type) QT_METATYPE_INTERFACE_INIT_IMPL(Type, QT_METATYPE_INTERFACE_INIT_DATASTREAM_IMPL)
#define QT_METATYPE_INTERFACE_INIT_NO_DATASTREAM(Type) QT_METATYPE_INTERFACE_INIT_IMPL(Type, QT_METATYPE_INTERFACE_INIT_EMPTY_DATASTREAM_IMPL)
#define QT_METATYPE_INTERFACE_INIT_EMPTY() \
{ \
/*creator*/ 0, \
/*deleter*/ 0, \
QT_METATYPE_INTERFACE_INIT_EMPTY_DATASTREAM_IMPL(void) \
/*constructor*/ 0, \
/*destructor*/ 0, \
/*size*/ 0, \
/*flags*/ 0, \
/*metaObject*/ 0 \
}
namespace QtMetaTypePrivate {
template<typename T>
struct TypeDefinition {
static const bool IsAvailable = true;
};
// Ignore these types, as incomplete
#ifdef QT_BOOTSTRAPPED
template<> struct TypeDefinition<QBitArray> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QEasingCurve> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QJsonArray> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QJsonDocument> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QJsonObject> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QJsonValue> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QModelIndex> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QUrl> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_GEOM_VARIANT
template<> struct TypeDefinition<QRect> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QRectF> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QSize> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QSizeF> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QLine> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QLineF> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QPoint> { static const bool IsAvailable = false; };
template<> struct TypeDefinition<QPointF> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_REGEXP
template<> struct TypeDefinition<QRegExp> { static const bool IsAvailable = false; };
#endif
#if defined(QT_BOOTSTRAPPED) || defined(QT_NO_REGULAREXPRESSION)
template<> struct TypeDefinition<QRegularExpression> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_SHORTCUT
template<> struct TypeDefinition<QKeySequence> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_CURSOR
template<> struct TypeDefinition<QCursor> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_MATRIX4X4
template<> struct TypeDefinition<QMatrix4x4> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_VECTOR2D
template<> struct TypeDefinition<QVector2D> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_VECTOR3D
template<> struct TypeDefinition<QVector3D> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_VECTOR4D
template<> struct TypeDefinition<QVector4D> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_QUATERNION
template<> struct TypeDefinition<QQuaternion> { static const bool IsAvailable = false; };
#endif
#ifdef QT_NO_ICON
template<> struct TypeDefinition<QIcon> { static const bool IsAvailable = false; };
#endif
} //namespace QtMetaTypePrivate
QT_END_NAMESPACE
#endif // QMETATYPE_P_H

View File

@ -0,0 +1,91 @@
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtCore module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia. For licensing terms and
** conditions see http://qt.digia.com/licensing. For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, 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.
**
** In addition, as a special exception, Digia gives you certain additional
** rights. These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** 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.
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QMETATYPESWITCHER_P_H
#define QMETATYPESWITCHER_P_H
#include "qmetatype.h"
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists purely as an
// implementation detail. This header file may change from version to
// version without notice, or even be removed.
//
// We mean it.
//
QT_BEGIN_NAMESPACE
class QMetaTypeSwitcher {
public:
class NotBuiltinType; // type is not a built-in type, but it may be a custom type or an unknown type
class UnknownType; // type not known to QMetaType system
template<class ReturnType, class DelegateObject>
static ReturnType switcher(DelegateObject &logic, int type, const void *data);
};
#define QT_METATYPE_SWICHER_CASE(TypeName, TypeId, Name)\
case QMetaType::TypeName: return logic.delegate(static_cast<Name const *>(data));
template<class ReturnType, class DelegateObject>
ReturnType QMetaTypeSwitcher::switcher(DelegateObject &logic, int type, const void *data)
{
switch (QMetaType::Type(type)) {
QT_FOR_EACH_STATIC_TYPE(QT_METATYPE_SWICHER_CASE)
case QMetaType::UnknownType:
return logic.delegate(static_cast<UnknownType const *>(data));
default:
if (type < QMetaType::User)
return logic.delegate(static_cast<UnknownType const *>(data));
return logic.delegate(static_cast<NotBuiltinType const *>(data));
}
}
#undef QT_METATYPE_SWICHER_CASE
QT_END_NAMESPACE
#endif // QMETATYPESWITCHER_P_H

View File

@ -0,0 +1,434 @@
/****************************************************************************
**
** Copyright (C) 2013 Digia Plc and/or its subsidiary(-ies).
** Copyright (C) 2013 Olivier Goffart <ogoffart@woboq.com>
** Contact: http://www.qt-project.org/legal
**
** This file is part of the QtCore module of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
** Licensees holding valid commercial Qt licenses may use this file in
** accordance with the commercial license agreement provided with the
** Software or, alternatively, in accordance with the terms contained in
** a written agreement between you and Digia. For licensing terms and
** conditions see http://qt.digia.com/licensing. For further information
** use the contact form at http://qt.digia.com/contact-us.
**
** GNU Lesser General Public License Usage
** Alternatively, 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.
**
** In addition, as a special exception, Digia gives you certain additional
** rights. These rights are described in the Digia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** 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.
**
**
** $QT_END_LICENSE$
**
****************************************************************************/
#ifndef QOBJECT_P_H
#define QOBJECT_P_H
//
// W A R N I N G
// -------------
//
// This file is not part of the Qt API. It exists for the convenience
// of qapplication_*.cpp, qwidget*.cpp and qfiledialog.cpp. This header
// file may change from version to version without notice, or even be removed.
//
// We mean it.
//
#include "QtCore/qobject.h"
#include "QtCore/qpointer.h"
#include "QtCore/qsharedpointer.h"
#include "QtCore/qcoreevent.h"
#include "QtCore/qlist.h"
#include "QtCore/qvector.h"
#include "QtCore/qvariant.h"
#include "QtCore/qreadwritelock.h"
QT_BEGIN_NAMESPACE
class QVariant;
class QThreadData;
class QObjectConnectionListVector;
namespace QtSharedPointer { struct ExternalRefCountData; }
/* for Qt Test */
struct QSignalSpyCallbackSet
{
typedef void (*BeginCallback)(QObject *caller, int signal_or_method_index, void **argv);
typedef void (*EndCallback)(QObject *caller, int signal_or_method_index);
BeginCallback signal_begin_callback,
slot_begin_callback;
EndCallback signal_end_callback,
slot_end_callback;
};
void Q_CORE_EXPORT qt_register_signal_spy_callbacks(const QSignalSpyCallbackSet &callback_set);
extern QSignalSpyCallbackSet Q_CORE_EXPORT qt_signal_spy_callback_set;
enum { QObjectPrivateVersion = QT_VERSION };
class Q_CORE_EXPORT QAbstractDeclarativeData
{
public:
static void (*destroyed)(QAbstractDeclarativeData *, QObject *);
static void (*destroyed_qml1)(QAbstractDeclarativeData *, QObject *);
static void (*parentChanged)(QAbstractDeclarativeData *, QObject *, QObject *);
static void (*signalEmitted)(QAbstractDeclarativeData *, QObject *, int, void **);
static int (*receivers)(QAbstractDeclarativeData *, const QObject *, int);
static bool (*isSignalConnected)(QAbstractDeclarativeData *, const QObject *, int);
};
// This is an implementation of QAbstractDeclarativeData that is identical with
// the implementation in QtDeclarative and QtQml for the first bit
struct QAbstractDeclarativeDataImpl : public QAbstractDeclarativeData
{
quint32 ownedByQml1:1;
quint32 unused: 31;
};
class Q_CORE_EXPORT QObjectPrivate : public QObjectData
{
Q_DECLARE_PUBLIC(QObject)
public:
struct ExtraData
{
ExtraData() {}
#ifndef QT_NO_USERDATA
QVector<QObjectUserData *> userData;
#endif
QList<QByteArray> propertyNames;
QList<QVariant> propertyValues;
QVector<int> runningTimers;
QList<QPointer<QObject> > eventFilters;
QString objectName;
};
typedef void (*StaticMetaCallFunction)(QObject *, QMetaObject::Call, int, void **);
struct Connection
{
QObject *sender;
QObject *receiver;
union {
StaticMetaCallFunction callFunction;
QtPrivate::QSlotObjectBase *slotObj;
};
// The next pointer for the singly-linked ConnectionList
Connection *nextConnectionList;
//senders linked list
Connection *next;
Connection **prev;
QAtomicPointer<const int> argumentTypes;
QAtomicInt ref_;
ushort method_offset;
ushort method_relative;
uint signal_index : 27; // In signal range (see QObjectPrivate::signalIndex())
ushort connectionType : 3; // 0 == auto, 1 == direct, 2 == queued, 4 == blocking
ushort isSlotObject : 1;
ushort ownArgumentTypes : 1;
Connection() : nextConnectionList(0), ref_(2), ownArgumentTypes(true) {
//ref_ is 2 for the use in the internal lists, and for the use in QMetaObject::Connection
}
~Connection();
int method() const { return method_offset + method_relative; }
void ref() { ref_.ref(); }
void deref() {
if (!ref_.deref()) {
Q_ASSERT(!receiver);
delete this;
}
}
};
// ConnectionList is a singly-linked list
struct ConnectionList {
ConnectionList() : first(0), last(0) {}
Connection *first;
Connection *last;
};
struct Sender
{
QObject *sender;
int signal;
int ref;
};
QObjectPrivate(int version = QObjectPrivateVersion);
virtual ~QObjectPrivate();
void deleteChildren();
void setParent_helper(QObject *);
void moveToThread_helper();
void setThreadData_helper(QThreadData *currentData, QThreadData *targetData);
void _q_reregisterTimers(void *pointer);
bool isSender(const QObject *receiver, const char *signal) const;
QObjectList receiverList(const char *signal) const;
QObjectList senderList() const;
void addConnection(int signal, Connection *c);
void cleanConnectionLists();
static inline Sender *setCurrentSender(QObject *receiver,
Sender *sender);
static inline void resetCurrentSender(QObject *receiver,
Sender *currentSender,
Sender *previousSender);
static QObjectPrivate *get(QObject *o) {
return o->d_func();
}
int signalIndex(const char *signalName, const QMetaObject **meta = 0) const;
inline bool isSignalConnected(uint signalIdx) const;
// To allow abitrary objects to call connectNotify()/disconnectNotify() without making
// the API public in QObject. This is used by QQmlNotifierEndpoint.
inline void connectNotify(const QMetaMethod &signal);
inline void disconnectNotify(const QMetaMethod &signal);
template <typename Func1, typename Func2>
static inline QMetaObject::Connection connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal,
const typename QtPrivate::FunctionPointer<Func2>::Object *receiverPrivate, Func2 slot,
Qt::ConnectionType type = Qt::AutoConnection);
template <typename Func1, typename Func2>
static inline bool disconnect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal,
const typename QtPrivate::FunctionPointer<Func2>::Object *receiverPrivate, Func2 slot);
static QMetaObject::Connection connectImpl(const QObject *sender, int signal_index,
const QObject *receiver, void **slot,
QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type,
const int *types, const QMetaObject *senderMetaObject);
static QMetaObject::Connection connect(const QObject *sender, int signal_index, QtPrivate::QSlotObjectBase *slotObj, Qt::ConnectionType type);
static bool disconnect(const QObject *sender, int signal_index, void **slot);
public:
ExtraData *extraData; // extra data set by the user
QThreadData *threadData; // id of the thread that owns the object
QObjectConnectionListVector *connectionLists;
Connection *senders; // linked list of connections connected to this object
Sender *currentSender; // object currently activating the object
mutable quint32 connectedSignals[2];
union {
QObject *currentChildBeingDeleted;
QAbstractDeclarativeData *declarativeData; //extra data used by the declarative module
};
// these objects are all used to indicate that a QObject was deleted
// plus QPointer, which keeps a separate list
QAtomicPointer<QtSharedPointer::ExternalRefCountData> sharedRefcount;
};
/*! \internal
Returns \c true if the signal with index \a signal_index from object \a sender is connected.
Signals with indices above a certain range are always considered connected (see connectedSignals
in QObjectPrivate).
\a signal_index must be the index returned by QObjectPrivate::signalIndex;
*/
inline bool QObjectPrivate::isSignalConnected(uint signal_index) const
{
return signal_index >= sizeof(connectedSignals) * 8
|| (connectedSignals[signal_index >> 5] & (1 << (signal_index & 0x1f))
|| (declarativeData && QAbstractDeclarativeData::isSignalConnected
&& QAbstractDeclarativeData::isSignalConnected(declarativeData, q_func(), signal_index)));
}
inline QObjectPrivate::Sender *QObjectPrivate::setCurrentSender(QObject *receiver,
Sender *sender)
{
Sender *previousSender = receiver->d_func()->currentSender;
receiver->d_func()->currentSender = sender;
return previousSender;
}
inline void QObjectPrivate::resetCurrentSender(QObject *receiver,
Sender *currentSender,
Sender *previousSender)
{
// ref is set to zero when this object is deleted during the metacall
if (currentSender->ref == 1)
receiver->d_func()->currentSender = previousSender;
// if we've recursed, we need to tell the caller about the objects deletion
if (previousSender)
previousSender->ref = currentSender->ref;
}
inline void QObjectPrivate::connectNotify(const QMetaMethod &signal)
{
q_ptr->connectNotify(signal);
}
inline void QObjectPrivate::disconnectNotify(const QMetaMethod &signal)
{
q_ptr->disconnectNotify(signal);
}
namespace QtPrivate {
template<typename Func, typename Args, typename R> class QPrivateSlotObject : public QSlotObjectBase
{
typedef QtPrivate::FunctionPointer<Func> FuncType;
Func function;
static void impl(int which, QSlotObjectBase *this_, QObject *r, void **a, bool *ret)
{
switch (which) {
case Destroy:
delete static_cast<QPrivateSlotObject*>(this_);
break;
case Call:
FuncType::template call<Args, R>(static_cast<QPrivateSlotObject*>(this_)->function,
static_cast<typename FuncType::Object *>(QObjectPrivate::get(r)), a);
break;
case Compare:
*ret = *reinterpret_cast<Func *>(a) == static_cast<QPrivateSlotObject*>(this_)->function;
break;
case NumOperations: ;
}
}
public:
explicit QPrivateSlotObject(Func f) : QSlotObjectBase(&impl), function(f) {}
};
} //namespace QtPrivate
template <typename Func1, typename Func2>
inline QMetaObject::Connection QObjectPrivate::connect(const typename QtPrivate::FunctionPointer<Func1>::Object *sender, Func1 signal,
const typename QtPrivate::FunctionPointer<Func2>::Object *receiverPrivate, Func2 slot,
Qt::ConnectionType type)
{
typedef QtPrivate::FunctionPointer<Func1> SignalType;
typedef QtPrivate::FunctionPointer<Func2> SlotType;
Q_STATIC_ASSERT_X(QtPrivate::HasQ_OBJECT_Macro<typename SignalType::Object>::Value,
"No Q_OBJECT in the class with the signal");
//compilation error if the arguments does not match.
Q_STATIC_ASSERT_X(int(SignalType::ArgumentCount) >= int(SlotType::ArgumentCount),
"The slot requires more arguments than the signal provides.");
Q_STATIC_ASSERT_X((QtPrivate::CheckCompatibleArguments<typename SignalType::Arguments, typename SlotType::Arguments>::value),
"Signal and slot arguments are not compatible.");
Q_STATIC_ASSERT_X((QtPrivate::AreArgumentsCompatible<typename SlotType::ReturnType, typename SignalType::ReturnType>::value),
"Return type of the slot is not compatible with the return type of the signal.");
const int *types = 0;
if (type == Qt::QueuedConnection || type == Qt::BlockingQueuedConnection)
types = QtPrivate::ConnectionTypes<typename SignalType::Arguments>::types();
return QObject::connectImpl(sender, reinterpret_cast<void **>(&signal),
receiverPrivate->q_ptr, reinterpret_cast<void **>(&slot),
new QtPrivate::QPrivateSlotObject<Func2, typename QtPrivate::List_Left<typename SignalType::Arguments, SlotType::ArgumentCount>::Value,
typename SignalType::ReturnType>(slot),
type, types, &SignalType::Object::staticMetaObject);
}
template <typename Func1, typename Func2>
bool QObjectPrivate::disconnect(const typename QtPrivate::FunctionPointer< Func1 >::Object* sender, Func1 signal,
const typename QtPrivate::FunctionPointer< Func2 >::Object* receiverPrivate, Func2 slot)
{
typedef QtPrivate::FunctionPointer<Func1> SignalType;
typedef QtPrivate::FunctionPointer<Func2> SlotType;
Q_STATIC_ASSERT_X(QtPrivate::HasQ_OBJECT_Macro<typename SignalType::Object>::Value,
"No Q_OBJECT in the class with the signal");
//compilation error if the arguments does not match.
Q_STATIC_ASSERT_X((QtPrivate::CheckCompatibleArguments<typename SignalType::Arguments, typename SlotType::Arguments>::value),
"Signal and slot arguments are not compatible.");
return QObject::disconnectImpl(sender, reinterpret_cast<void **>(&signal),
receiverPrivate->q_ptr, reinterpret_cast<void **>(&slot),
&SignalType::Object::staticMetaObject);
}
Q_DECLARE_TYPEINFO(QObjectPrivate::Connection, Q_MOVABLE_TYPE);
Q_DECLARE_TYPEINFO(QObjectPrivate::Sender, Q_MOVABLE_TYPE);
class QSemaphore;
class Q_CORE_EXPORT QMetaCallEvent : public QEvent
{
public:
QMetaCallEvent(ushort method_offset, ushort method_relative, QObjectPrivate::StaticMetaCallFunction callFunction , const QObject *sender, int signalId,
int nargs = 0, int *types = 0, void **args = 0, QSemaphore *semaphore = 0);
/*! \internal
\a signalId is in the signal index range (see QObjectPrivate::signalIndex()).
*/
QMetaCallEvent(QtPrivate::QSlotObjectBase *slotObj, const QObject *sender, int signalId,
int nargs = 0, int *types = 0, void **args = 0, QSemaphore *semaphore = 0);
~QMetaCallEvent();
inline int id() const { return method_offset_ + method_relative_; }
inline const QObject *sender() const { return sender_; }
inline int signalId() const { return signalId_; }
inline void **args() const { return args_; }
virtual void placeMetaCall(QObject *object);
private:
QtPrivate::QSlotObjectBase *slotObj_;
const QObject *sender_;
int signalId_;
int nargs_;
int *types_;
void **args_;
QSemaphore *semaphore_;
QObjectPrivate::StaticMetaCallFunction callFunction_;
ushort method_offset_;
ushort method_relative_;
};
class QBoolBlocker
{
Q_DISABLE_COPY(QBoolBlocker)
public:
explicit inline QBoolBlocker(bool &b, bool value=true):block(b), reset(b){block = value;}
inline ~QBoolBlocker(){block = reset; }
private:
bool &block;
bool reset;
};
void Q_CORE_EXPORT qDeleteInEventHandler(QObject *o);
struct QAbstractDynamicMetaObject;
struct Q_CORE_EXPORT QDynamicMetaObjectData
{
virtual ~QDynamicMetaObjectData() {}
virtual void objectDestroyed(QObject *) { delete this; }
virtual QAbstractDynamicMetaObject *toDynamicMetaObject(QObject *) = 0;
virtual int metaCall(QObject *, QMetaObject::Call, int _id, void **) = 0;
};
struct Q_CORE_EXPORT QAbstractDynamicMetaObject : public QDynamicMetaObjectData, public QMetaObject
{
virtual QAbstractDynamicMetaObject *toDynamicMetaObject(QObject *) { return this; }
virtual int createProperty(const char *, const char *) { return -1; }
virtual int metaCall(QObject *, QMetaObject::Call c, int _id, void **a)
{ return metaCall(c, _id, a); }
virtual int metaCall(QMetaObject::Call, int _id, void **) { return _id; } // Compat overload
};
QT_END_NAMESPACE
#endif // QOBJECT_P_H

View File

@ -0,0 +1,31 @@
TEMPLATE = app
QT += qml quick
CONFIG += c++11
SOURCES += main.cpp
RESOURCES += qml.qrc
# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH =
# Default rules for deployment.
include(deployment.pri)
win32:CONFIG(release, debug|release): LIBS += -L$$OUT_PWD/../DynamicQObject/release/ -lDynamicQObject
else:win32:CONFIG(debug, debug|release): LIBS += -L$$OUT_PWD/../DynamicQObject/debug/ -lDynamicQObject
else:unix: LIBS += -L$$OUT_PWD/../DynamicQObject/ -lDynamicQObject
INCLUDEPATH += $$PWD/../DynamicQObject
DEPENDPATH += $$PWD/../DynamicQObject
win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/release/libDynamicQObject.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/debug/libDynamicQObject.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/release/DynamicQObject.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/debug/DynamicQObject.lib
else:unix: PRE_TARGETDEPS += $$OUT_PWD/../DynamicQObject/libDynamicQObject.a
HEADERS +=

View File

@ -0,0 +1,27 @@
android-no-sdk {
target.path = /data/user/qt
export(target.path)
INSTALLS += target
} else:android {
x86 {
target.path = /libs/x86
} else: armeabi-v7a {
target.path = /libs/armeabi-v7a
} else {
target.path = /libs/armeabi
}
export(target.path)
INSTALLS += target
} else:unix {
isEmpty(target.path) {
qnx {
target.path = /tmp/$${TARGET}/bin
} else {
target.path = /opt/$${TARGET}/bin
}
export(target.path)
}
INSTALLS += target
}
export(INSTALLS)

View File

@ -0,0 +1,22 @@
#include <QGuiApplication>
#include <QQmlApplicationEngine>
#include <QQmlContext>
#include <QMetaMethod>
#include <DynamicQObject.h>
#include <QDebug>
int main(int argc, char *argv[])
{
QGuiApplication app(argc, argv);
DynamicQObject dynamicQObject;
int slotIndex;
dynamicQObject.registerSlot("foo", QMetaType::Void, {}, slotIndex);
dynamicQObject.registerSlot("bar", QMetaType::Int, {QMetaType::Int}, slotIndex);
QQmlApplicationEngine engine;
engine.rootContext()->setContextProperty("dynamicQObject", QVariant::fromValue<QObject*>(&dynamicQObject));
engine.load(QUrl(QStringLiteral("qrc:///main.qml")));
return app.exec();
}

View File

@ -0,0 +1,29 @@
import QtQuick 2.2
import QtQuick.Window 2.1
Window {
visible: true
width: 360
height: 360
MouseArea {
anchors.fill: parent
onClicked: {
Qt.quit();
}
}
Text {
text: qsTr("Hello World")
anchors.centerIn: parent
}
Component.onCompleted: {
console.log(dynamicQObject)
var result = 0;
result = dynamicQObject.foo();
console.log("Result:", result)
result = dynamicQObject.bar(10);
console.log("Result:", result)
}
}

View File

@ -0,0 +1,5 @@
<RCC>
<qresource prefix="/">
<file>main.qml</file>
</qresource>
</RCC>

View File

@ -0,0 +1,19 @@
#-------------------------------------------------
#
# Project created by QtCreator 2014-07-13T10:05:38
#
#-------------------------------------------------
QT -= gui
TARGET = StaticTestLib
TEMPLATE = lib
CONFIG += staticlib
SOURCES += statictestlib.cpp
HEADERS += statictestlib.h
unix {
target.path = /usr/lib
INSTALLS += target
}

View File

@ -0,0 +1,6 @@
#include "statictestlib.h"
StaticTestLib::StaticTestLib()
{
}

View File

@ -0,0 +1,12 @@
#ifndef STATICTESTLIB_H
#define STATICTESTLIB_H
class StaticTestLib
{
public:
StaticTestLib();
};
#endif // STATICTESTLIB_H

Binary file not shown.

475
build/DOtherSide/Makefile Normal file
View File

@ -0,0 +1,475 @@
#############################################################################
# Makefile for building: libDOtherSide.so.1.0.0
# Generated by qmake (3.0) (Qt 5.3.1)
# Project: ../../DOtherSide/DOtherSide/DOtherSide.pro
# Template: lib
# Command: /usr/bin/qmake-qt5 -spec linux-g++ -o Makefile ../../DOtherSide/DOtherSide/DOtherSide.pro
#############################################################################
MAKEFILE = Makefile
####### Compiler, tools and options
CC = gcc
CXX = g++
DEFINES = -DDOTHERSIDE_LIBRARY -DQT_NO_DEBUG -DQT_QUICK_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB
CFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
CXXFLAGS = -pipe -O1 -fpic -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -std=c++0x -Wall -W -D_REENTRANT -fPIC $(DEFINES)
INCPATH = -I/usr/lib/qt/mkspecs/linux-g++ -I../../DOtherSide/DOtherSide -I../../DOtherSide/DynamicQObject -isystem /usr/include/qt -isystem /usr/include/qt/QtQuick -isystem /usr/include/qt/QtQml -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I/home/filippo/Desktop/build/DOtherSide -I.
LINK = g++
LFLAGS = -Wl,-O1,--sort-common,--as-needed,-z,relro -Wl,-O1 -shared -Wl,-soname,libDOtherSide.so.1
LIBS = $(SUBLIBS) -L/home/filippo/Desktop/build/DOtherSide/../DynamicQObject/ -lDynamicQObject -lQt5Quick -lQt5Qml -lQt5Network -lQt5Gui -lQt5Core -lGL -lpthread
AR = ar cqs
RANLIB =
QMAKE = /usr/bin/qmake-qt5
TAR = tar -cf
COMPRESS = gzip -9f
COPY = cp -f
SED = sed
COPY_FILE = cp -f
COPY_DIR = cp -f -R
STRIP = strip
INSTALL_FILE = install -m 644 -p
INSTALL_DIR = $(COPY_DIR)
INSTALL_PROGRAM = install -m 755 -p
DEL_FILE = rm -f
SYMLINK = ln -f -s
DEL_DIR = rmdir
MOVE = mv -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
####### Output directory
OBJECTS_DIR = ./
####### Files
SOURCES = ../../DOtherSide/DOtherSide/DOtherSide.cpp
OBJECTS = DOtherSide.o
DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/opengl.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/DOtherSide/DOtherSide.pro ../../DOtherSide/DOtherSide/DOtherSide.cpp
QMAKE_TARGET = DOtherSide
DESTDIR = #avoid trailing-slash linebreak
TARGET = libDOtherSide.so.1.0.0
TARGETA = libDOtherSide.a
TARGET0 = libDOtherSide.so
TARGETD = libDOtherSide.so.1.0.0
TARGET1 = libDOtherSide.so.1
TARGET2 = libDOtherSide.so.1.0
first: all
####### Implicit rules
.SUFFIXES: .o .c .cpp .cc .cxx .C
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
####### Build rules
all: Makefile $(TARGET)
$(TARGET): /home/filippo/Desktop/build/DOtherSide/../DynamicQObject/libDynamicQObject.a $(OBJECTS) $(SUBLIBS) $(OBJCOMP)
-$(DEL_FILE) $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(LIBS) $(OBJCOMP)
-ln -s $(TARGET) $(TARGET0)
-ln -s $(TARGET) $(TARGET1)
-ln -s $(TARGET) $(TARGET2)
staticlib: $(TARGETA)
$(TARGETA): /home/filippo/Desktop/build/DOtherSide/../DynamicQObject/libDynamicQObject.a $(OBJECTS) $(OBJCOMP)
-$(DEL_FILE) $(TARGETA)
$(AR) $(TARGETA) $(OBJECTS)
Makefile: ../../DOtherSide/DOtherSide/DOtherSide.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/opengl.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/DOtherSide/DOtherSide.pro \
/usr/lib/libQt5Quick.prl \
/usr/lib/libQt5Qml.prl \
/usr/lib/libQt5Network.prl \
/usr/lib/libQt5Gui.prl \
/usr/lib/libQt5Core.prl
$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/DOtherSide/DOtherSide.pro
/usr/lib/qt/mkspecs/features/spec_pre.prf:
/usr/lib/qt/mkspecs/common/shell-unix.conf:
/usr/lib/qt/mkspecs/common/unix.conf:
/usr/lib/qt/mkspecs/common/linux.conf:
/usr/lib/qt/mkspecs/common/gcc-base.conf:
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
/usr/lib/qt/mkspecs/common/g++-base.conf:
/usr/lib/qt/mkspecs/common/g++-unix.conf:
/usr/lib/qt/mkspecs/qconfig.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
/usr/lib/qt/mkspecs/features/qt_functions.prf:
/usr/lib/qt/mkspecs/features/qt_config.prf:
/usr/lib/qt/mkspecs/linux-g++/qmake.conf:
/usr/lib/qt/mkspecs/features/spec_post.prf:
/usr/lib/qt/mkspecs/features/exclusive_builds.prf:
/usr/lib/qt/mkspecs/features/default_pre.prf:
/usr/lib/qt/mkspecs/features/resolve_config.prf:
/usr/lib/qt/mkspecs/features/default_post.prf:
/usr/lib/qt/mkspecs/features/c++11.prf:
/usr/lib/qt/mkspecs/features/warn_on.prf:
/usr/lib/qt/mkspecs/features/qt.prf:
/usr/lib/qt/mkspecs/features/resources.prf:
/usr/lib/qt/mkspecs/features/moc.prf:
/usr/lib/qt/mkspecs/features/unix/opengl.prf:
/usr/lib/qt/mkspecs/features/unix/thread.prf:
/usr/lib/qt/mkspecs/features/testcase_targets.prf:
/usr/lib/qt/mkspecs/features/exceptions.prf:
/usr/lib/qt/mkspecs/features/yacc.prf:
/usr/lib/qt/mkspecs/features/lex.prf:
../../DOtherSide/DOtherSide/DOtherSide.pro:
/usr/lib/libQt5Quick.prl:
/usr/lib/libQt5Qml.prl:
/usr/lib/libQt5Network.prl:
/usr/lib/libQt5Gui.prl:
/usr/lib/libQt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/DOtherSide/DOtherSide.pro
qmake_all: FORCE
dist:
@test -d .tmp/DOtherSide1.0.0 || mkdir -p .tmp/DOtherSide1.0.0
$(COPY_FILE) --parents $(DIST) .tmp/DOtherSide1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/DOtherSide/DOtherSide.h .tmp/DOtherSide1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/DOtherSide/DOtherSide.cpp .tmp/DOtherSide1.0.0/ && (cd `dirname .tmp/DOtherSide1.0.0` && $(TAR) DOtherSide1.0.0.tar DOtherSide1.0.0 && $(COMPRESS) DOtherSide1.0.0.tar) && $(MOVE) `dirname .tmp/DOtherSide1.0.0`/DOtherSide1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/DOtherSide1.0.0
clean:compiler_clean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) *~ core *.core
distclean: clean
-$(DEL_FILE) $(TARGET)
-$(DEL_FILE) $(TARGET0) $(TARGET1) $(TARGET2) $(TARGETA)
-$(DEL_FILE) Makefile
####### Sub-libraries
mocclean: compiler_moc_header_clean compiler_moc_source_clean
mocables: compiler_moc_header_make_all compiler_moc_source_make_all
check: first
compiler_rcc_make_all:
compiler_rcc_clean:
compiler_moc_header_make_all:
compiler_moc_header_clean:
compiler_moc_source_make_all:
compiler_moc_source_clean:
compiler_yacc_decl_make_all:
compiler_yacc_decl_clean:
compiler_yacc_impl_make_all:
compiler_yacc_impl_clean:
compiler_lex_make_all:
compiler_lex_clean:
compiler_clean:
####### Compile
DOtherSide.o: ../../DOtherSide/DOtherSide/DOtherSide.cpp ../../DOtherSide/DOtherSide/DOtherSide.h \
../../DOtherSide/DynamicQObject/DynamicQObject.h \
../../DOtherSide/DynamicQObject/DynamicSignal.h \
../../DOtherSide/DynamicQObject/DynamicSlot.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o DOtherSide.o ../../DOtherSide/DOtherSide/DOtherSide.cpp
####### Install
install_target: first FORCE
@test -d $(INSTALL_ROOT)/usr/lib || mkdir -p $(INSTALL_ROOT)/usr/lib
-$(INSTALL_PROGRAM) "$(TARGET)" "$(INSTALL_ROOT)/usr/lib/$(TARGET)"
-$(STRIP) --strip-unneeded "$(INSTALL_ROOT)/usr/lib/$(TARGET)"
-$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/usr/lib/$(TARGET0)"
-$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/usr/lib/$(TARGET1)"
-$(SYMLINK) "$(TARGET)" "$(INSTALL_ROOT)/usr/lib/$(TARGET2)"
uninstall_target: FORCE
-$(DEL_FILE) "$(INSTALL_ROOT)/usr/lib/$(TARGET)"
-$(DEL_FILE) "$(INSTALL_ROOT)/usr/lib/$(TARGET0)"
-$(DEL_FILE) "$(INSTALL_ROOT)/usr/lib/$(TARGET1)"
-$(DEL_FILE) "$(INSTALL_ROOT)/usr/lib/$(TARGET2)"
-$(DEL_DIR) $(INSTALL_ROOT)/usr/lib/
install: install_target FORCE
uninstall: uninstall_target FORCE
FORCE:

View File

@ -0,0 +1 @@
libDOtherSide.so.1.0.0

View File

@ -0,0 +1 @@
libDOtherSide.so.1.0.0

View File

@ -0,0 +1 @@
libDOtherSide.so.1.0.0

Binary file not shown.

View File

@ -0,0 +1,458 @@
#############################################################################
# Makefile for building: tst_dynamicobjecttest
# Generated by qmake (3.0) (Qt 5.3.1)
# Project: ../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro
# Template: app
# Command: /usr/bin/qmake-qt5 -spec linux-g++ -o Makefile ../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro
#############################################################################
MAKEFILE = Makefile
####### Compiler, tools and options
CC = gcc
CXX = g++
DEFINES = -DSRCDIR=\"/home/filippo/Desktop/DOtherSide/DynamicObjectTest/\" -DQT_NO_DEBUG -DQT_TESTLIB_LIB -DQT_CORE_LIB -DQT_TESTCASE_BUILDDIR=\"/home/filippo/Desktop/build/DynamicObjectTest\"
CFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -Wall -W -D_REENTRANT -fPIE $(DEFINES)
CXXFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -std=c++0x -Wall -W -D_REENTRANT -fPIE $(DEFINES)
INCPATH = -I/usr/lib/qt/mkspecs/linux-g++ -I../../DOtherSide/DynamicObjectTest -I../../DOtherSide/DynamicQObject -isystem /usr/include/qt -isystem /usr/include/qt/QtTest -isystem /usr/include/qt/QtCore -I/home/filippo/Desktop/build/DynamicObjectTest -I.
LINK = g++
LFLAGS = -Wl,-O1,--sort-common,--as-needed,-z,relro -Wl,-O1
LIBS = $(SUBLIBS) -L/home/filippo/Desktop/build/DynamicObjectTest/../DynamicQObject/ -lDynamicQObject -lQt5Test -lQt5Core -lpthread
AR = ar cqs
RANLIB =
QMAKE = /usr/bin/qmake-qt5
TAR = tar -cf
COMPRESS = gzip -9f
COPY = cp -f
SED = sed
COPY_FILE = cp -f
COPY_DIR = cp -f -R
STRIP = strip
INSTALL_FILE = install -m 644 -p
INSTALL_DIR = $(COPY_DIR)
INSTALL_PROGRAM = install -m 755 -p
DEL_FILE = rm -f
SYMLINK = ln -f -s
DEL_DIR = rmdir
MOVE = mv -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
####### Output directory
OBJECTS_DIR = ./
####### Files
SOURCES = ../../DOtherSide/DynamicObjectTest/tst_dynamicobjecttest.cpp \
../../DOtherSide/DynamicObjectTest/Mockprinter.cpp moc_Mockprinter.cpp
OBJECTS = tst_dynamicobjecttest.o \
Mockprinter.o \
moc_Mockprinter.o
DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/testlib_defines.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro ../../DOtherSide/DynamicObjectTest/tst_dynamicobjecttest.cpp \
../../DOtherSide/DynamicObjectTest/Mockprinter.cpp
QMAKE_TARGET = tst_dynamicobjecttest
DESTDIR = #avoid trailing-slash linebreak
TARGET = tst_dynamicobjecttest
first: all
####### Implicit rules
.SUFFIXES: .o .c .cpp .cc .cxx .C
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
####### Build rules
all: Makefile $(TARGET)
$(TARGET): /home/filippo/Desktop/build/DynamicObjectTest/../DynamicQObject/libDynamicQObject.a $(OBJECTS)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
Makefile: ../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/testlib_defines.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro \
/usr/lib/libQt5Test.prl \
/usr/lib/libQt5Core.prl
$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro
/usr/lib/qt/mkspecs/features/spec_pre.prf:
/usr/lib/qt/mkspecs/common/shell-unix.conf:
/usr/lib/qt/mkspecs/common/unix.conf:
/usr/lib/qt/mkspecs/common/linux.conf:
/usr/lib/qt/mkspecs/common/gcc-base.conf:
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
/usr/lib/qt/mkspecs/common/g++-base.conf:
/usr/lib/qt/mkspecs/common/g++-unix.conf:
/usr/lib/qt/mkspecs/qconfig.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
/usr/lib/qt/mkspecs/features/qt_functions.prf:
/usr/lib/qt/mkspecs/features/qt_config.prf:
/usr/lib/qt/mkspecs/linux-g++/qmake.conf:
/usr/lib/qt/mkspecs/features/spec_post.prf:
/usr/lib/qt/mkspecs/features/exclusive_builds.prf:
/usr/lib/qt/mkspecs/features/default_pre.prf:
/usr/lib/qt/mkspecs/features/resolve_config.prf:
/usr/lib/qt/mkspecs/features/default_post.prf:
/usr/lib/qt/mkspecs/features/c++11.prf:
/usr/lib/qt/mkspecs/features/warn_on.prf:
/usr/lib/qt/mkspecs/features/qt.prf:
/usr/lib/qt/mkspecs/features/resources.prf:
/usr/lib/qt/mkspecs/features/moc.prf:
/usr/lib/qt/mkspecs/features/testlib_defines.prf:
/usr/lib/qt/mkspecs/features/unix/thread.prf:
/usr/lib/qt/mkspecs/features/testcase_targets.prf:
/usr/lib/qt/mkspecs/features/exceptions.prf:
/usr/lib/qt/mkspecs/features/yacc.prf:
/usr/lib/qt/mkspecs/features/lex.prf:
../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro:
/usr/lib/libQt5Test.prl:
/usr/lib/libQt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/DynamicObjectTest/DynamicObjectTest.pro
qmake_all: FORCE
dist:
@test -d .tmp/tst_dynamicobjecttest1.0.0 || mkdir -p .tmp/tst_dynamicobjecttest1.0.0
$(COPY_FILE) --parents $(DIST) .tmp/tst_dynamicobjecttest1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/DynamicObjectTest/Mockprinter.h .tmp/tst_dynamicobjecttest1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/DynamicObjectTest/tst_dynamicobjecttest.cpp ../../DOtherSide/DynamicObjectTest/Mockprinter.cpp .tmp/tst_dynamicobjecttest1.0.0/ && (cd `dirname .tmp/tst_dynamicobjecttest1.0.0` && $(TAR) tst_dynamicobjecttest1.0.0.tar tst_dynamicobjecttest1.0.0 && $(COMPRESS) tst_dynamicobjecttest1.0.0.tar) && $(MOVE) `dirname .tmp/tst_dynamicobjecttest1.0.0`/tst_dynamicobjecttest1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/tst_dynamicobjecttest1.0.0
clean:compiler_clean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) *~ core *.core
distclean: clean
-$(DEL_FILE) $(TARGET)
-$(DEL_FILE) Makefile
####### Sub-libraries
mocclean: compiler_moc_header_clean compiler_moc_source_clean
mocables: compiler_moc_header_make_all compiler_moc_source_make_all
check: first
compiler_rcc_make_all:
compiler_rcc_clean:
compiler_moc_header_make_all: moc_Mockprinter.cpp
compiler_moc_header_clean:
-$(DEL_FILE) moc_Mockprinter.cpp
moc_Mockprinter.cpp: ../../DOtherSide/DynamicObjectTest/Mockprinter.h
/usr/lib/qt/bin/moc $(DEFINES) -I/usr/lib/qt/mkspecs/linux-g++ -I/home/filippo/Desktop/DOtherSide/DynamicObjectTest -I/home/filippo/Desktop/DOtherSide/DynamicQObject -I/usr/include/qt -I/usr/include/qt/QtTest -I/usr/include/qt/QtCore -I. -I/usr/include/c++/4.9.0 -I/usr/include/c++/4.9.0/x86_64-unknown-linux-gnu -I/usr/include/c++/4.9.0/backward -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.0/include -I/usr/local/include -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.0/include-fixed -I/usr/include ../../DOtherSide/DynamicObjectTest/Mockprinter.h -o moc_Mockprinter.cpp
compiler_moc_source_make_all: tst_dynamicobjecttest.moc
compiler_moc_source_clean:
-$(DEL_FILE) tst_dynamicobjecttest.moc
tst_dynamicobjecttest.moc: ../../DOtherSide/DynamicObjectTest/Mockprinter.h \
../../DOtherSide/DynamicQObject/DynamicQObject.h \
../../DOtherSide/DynamicQObject/DynamicSignal.h \
../../DOtherSide/DynamicQObject/DynamicSlot.h \
../../DOtherSide/DynamicObjectTest/tst_dynamicobjecttest.cpp
/usr/lib/qt/bin/moc $(DEFINES) -I/usr/lib/qt/mkspecs/linux-g++ -I/home/filippo/Desktop/DOtherSide/DynamicObjectTest -I/home/filippo/Desktop/DOtherSide/DynamicQObject -I/usr/include/qt -I/usr/include/qt/QtTest -I/usr/include/qt/QtCore -I. -I/usr/include/c++/4.9.0 -I/usr/include/c++/4.9.0/x86_64-unknown-linux-gnu -I/usr/include/c++/4.9.0/backward -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.0/include -I/usr/local/include -I/usr/lib/gcc/x86_64-unknown-linux-gnu/4.9.0/include-fixed -I/usr/include ../../DOtherSide/DynamicObjectTest/tst_dynamicobjecttest.cpp -o tst_dynamicobjecttest.moc
compiler_yacc_decl_make_all:
compiler_yacc_decl_clean:
compiler_yacc_impl_make_all:
compiler_yacc_impl_clean:
compiler_lex_make_all:
compiler_lex_clean:
compiler_clean: compiler_moc_header_clean compiler_moc_source_clean
####### Compile
tst_dynamicobjecttest.o: ../../DOtherSide/DynamicObjectTest/tst_dynamicobjecttest.cpp ../../DOtherSide/DynamicObjectTest/Mockprinter.h \
../../DOtherSide/DynamicQObject/DynamicQObject.h \
../../DOtherSide/DynamicQObject/DynamicSignal.h \
../../DOtherSide/DynamicQObject/DynamicSlot.h \
tst_dynamicobjecttest.moc
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o tst_dynamicobjecttest.o ../../DOtherSide/DynamicObjectTest/tst_dynamicobjecttest.cpp
Mockprinter.o: ../../DOtherSide/DynamicObjectTest/Mockprinter.cpp ../../DOtherSide/DynamicObjectTest/Mockprinter.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o Mockprinter.o ../../DOtherSide/DynamicObjectTest/Mockprinter.cpp
moc_Mockprinter.o: moc_Mockprinter.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o moc_Mockprinter.o moc_Mockprinter.cpp
####### Install
install: FORCE
uninstall: FORCE
FORCE:

Binary file not shown.

View File

@ -0,0 +1,133 @@
/****************************************************************************
** Meta object code from reading C++ file 'Mockprinter.h'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.3.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include "../../DOtherSide/DynamicObjectTest/Mockprinter.h"
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'Mockprinter.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.3.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_MockPrinter_t {
QByteArrayData data[5];
char stringdata[35];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_MockPrinter_t, stringdata) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_MockPrinter_t qt_meta_stringdata_MockPrinter = {
{
QT_MOC_LITERAL(0, 0, 11),
QT_MOC_LITERAL(1, 12, 7),
QT_MOC_LITERAL(2, 20, 0),
QT_MOC_LITERAL(3, 21, 7),
QT_MOC_LITERAL(4, 29, 5)
},
"MockPrinter\0printed\0\0message\0print"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_MockPrinter[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
2, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
1, // signalCount
// signals: name, argc, parameters, tag, flags
1, 1, 24, 2, 0x06 /* Public */,
// slots: name, argc, parameters, tag, flags
4, 1, 27, 2, 0x0a /* Public */,
// signals: parameters
QMetaType::Void, QMetaType::QVariant, 3,
// slots: parameters
QMetaType::Void, QMetaType::QVariant, 3,
0 // eod
};
void MockPrinter::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
MockPrinter *_t = static_cast<MockPrinter *>(_o);
switch (_id) {
case 0: _t->printed((*reinterpret_cast< const QVariant(*)>(_a[1]))); break;
case 1: _t->print((*reinterpret_cast< const QVariant(*)>(_a[1]))); break;
default: ;
}
} else if (_c == QMetaObject::IndexOfMethod) {
int *result = reinterpret_cast<int *>(_a[0]);
void **func = reinterpret_cast<void **>(_a[1]);
{
typedef void (MockPrinter::*_t)(const QVariant & );
if (*reinterpret_cast<_t *>(func) == static_cast<_t>(&MockPrinter::printed)) {
*result = 0;
}
}
}
}
const QMetaObject MockPrinter::staticMetaObject = {
{ &QObject::staticMetaObject, qt_meta_stringdata_MockPrinter.data,
qt_meta_data_MockPrinter, qt_static_metacall, 0, 0}
};
const QMetaObject *MockPrinter::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *MockPrinter::qt_metacast(const char *_clname)
{
if (!_clname) return 0;
if (!strcmp(_clname, qt_meta_stringdata_MockPrinter.stringdata))
return static_cast<void*>(const_cast< MockPrinter*>(this));
return QObject::qt_metacast(_clname);
}
int MockPrinter::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QObject::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 2)
qt_static_metacall(this, _c, _id, _a);
_id -= 2;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 2)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 2;
}
return _id;
}
// SIGNAL 0
void MockPrinter::printed(const QVariant & _t1)
{
void *_a[] = { 0, const_cast<void*>(reinterpret_cast<const void*>(&_t1)) };
QMetaObject::activate(this, &staticMetaObject, 0, _a);
}
QT_END_MOC_NAMESPACE

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,113 @@
/****************************************************************************
** Meta object code from reading C++ file 'tst_dynamicobjecttest.cpp'
**
** Created by: The Qt Meta Object Compiler version 67 (Qt 5.3.1)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include <QtCore/qbytearray.h>
#include <QtCore/qmetatype.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'tst_dynamicobjecttest.cpp' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 67
#error "This file was generated using the moc from 5.3.1. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif
QT_BEGIN_MOC_NAMESPACE
struct qt_meta_stringdata_DynamicObjectTest_t {
QByteArrayData data[4];
char stringdata[89];
};
#define QT_MOC_LITERAL(idx, ofs, len) \
Q_STATIC_BYTE_ARRAY_DATA_HEADER_INITIALIZER_WITH_OFFSET(len, \
qptrdiff(offsetof(qt_meta_stringdata_DynamicObjectTest_t, stringdata) + ofs \
- idx * sizeof(QByteArrayData)) \
)
static const qt_meta_stringdata_DynamicObjectTest_t qt_meta_stringdata_DynamicObjectTest = {
{
QT_MOC_LITERAL(0, 0, 17),
QT_MOC_LITERAL(1, 18, 34),
QT_MOC_LITERAL(2, 53, 0),
QT_MOC_LITERAL(3, 54, 34)
},
"DynamicObjectTest\0dynamicSignalToRealSlotConnectTest\0"
"\0realSignalToDynamicSlotConnectTest"
};
#undef QT_MOC_LITERAL
static const uint qt_meta_data_DynamicObjectTest[] = {
// content:
7, // revision
0, // classname
0, 0, // classinfo
2, 14, // methods
0, 0, // properties
0, 0, // enums/sets
0, 0, // constructors
0, // flags
0, // signalCount
// slots: name, argc, parameters, tag, flags
1, 0, 24, 2, 0x08 /* Private */,
3, 0, 25, 2, 0x08 /* Private */,
// slots: parameters
QMetaType::Void,
QMetaType::Void,
0 // eod
};
void DynamicObjectTest::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
if (_c == QMetaObject::InvokeMetaMethod) {
DynamicObjectTest *_t = static_cast<DynamicObjectTest *>(_o);
switch (_id) {
case 0: _t->dynamicSignalToRealSlotConnectTest(); break;
case 1: _t->realSignalToDynamicSlotConnectTest(); break;
default: ;
}
}
Q_UNUSED(_a);
}
const QMetaObject DynamicObjectTest::staticMetaObject = {
{ &QObject::staticMetaObject, qt_meta_stringdata_DynamicObjectTest.data,
qt_meta_data_DynamicObjectTest, qt_static_metacall, 0, 0}
};
const QMetaObject *DynamicObjectTest::metaObject() const
{
return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
}
void *DynamicObjectTest::qt_metacast(const char *_clname)
{
if (!_clname) return 0;
if (!strcmp(_clname, qt_meta_stringdata_DynamicObjectTest.stringdata))
return static_cast<void*>(const_cast< DynamicObjectTest*>(this));
return QObject::qt_metacast(_clname);
}
int DynamicObjectTest::qt_metacall(QMetaObject::Call _c, int _id, void **_a)
{
_id = QObject::qt_metacall(_c, _id, _a);
if (_id < 0)
return _id;
if (_c == QMetaObject::InvokeMetaMethod) {
if (_id < 2)
qt_static_metacall(this, _c, _id, _a);
_id -= 2;
} else if (_c == QMetaObject::RegisterMethodArgumentMetaType) {
if (_id < 2)
*reinterpret_cast<int*>(_a[0]) = -1;
_id -= 2;
}
return _id;
}
QT_END_MOC_NAMESPACE

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,472 @@
#############################################################################
# Makefile for building: libDynamicQObject.a
# Generated by qmake (3.0) (Qt 5.3.1)
# Project: ../../DOtherSide/DynamicQObject/DynamicQObject.pro
# Template: lib
# Command: /usr/bin/qmake-qt5 -spec linux-g++ -o Makefile ../../DOtherSide/DynamicQObject/DynamicQObject.pro
#############################################################################
MAKEFILE = Makefile
####### Compiler, tools and options
CC = gcc
CXX = g++
DEFINES = -DQT_NO_DEBUG -DQT_CORE_LIB
CFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -Wall -W -D_REENTRANT $(DEFINES)
CXXFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -fPIC -std=c++0x -Wall -W -D_REENTRANT $(DEFINES)
INCPATH = -I/usr/lib/qt/mkspecs/linux-g++ -I../../DOtherSide/DynamicQObject -I../../DOtherSide/DynamicQObject -I../../DOtherSide/DynamicQObject/private -isystem /usr/include/qt -isystem /usr/include/qt/QtCore -I/home/filippo/Desktop/build/DynamicQObject -I.
AR = ar cqs
RANLIB =
QMAKE = /usr/bin/qmake-qt5
TAR = tar -cf
COMPRESS = gzip -9f
COPY = cp -f
SED = sed
COPY_FILE = cp -f
COPY_DIR = cp -f -R
STRIP = strip
INSTALL_FILE = install -m 644 -p
INSTALL_DIR = $(COPY_DIR)
INSTALL_PROGRAM = install -m 755 -p
DEL_FILE = rm -f
SYMLINK = ln -f -s
DEL_DIR = rmdir
MOVE = mv -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
####### Output directory
OBJECTS_DIR = ./
####### Files
SOURCES = ../../DOtherSide/DynamicQObject/DynamicQObject.cpp \
../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder.cpp \
../../DOtherSide/DynamicQObject/private/qmetaobject.cpp \
../../DOtherSide/DynamicQObject/private/qmetatype.cpp \
../../DOtherSide/DynamicQObject/DynamicSignal.cpp \
../../DOtherSide/DynamicQObject/DynamicSlot.cpp
OBJECTS = DynamicQObject.o \
qmetaobjectbuilder.o \
qmetaobject.o \
qmetatype.o \
DynamicSignal.o \
DynamicSlot.o
DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/DynamicQObject/DynamicQObject.pro ../../DOtherSide/DynamicQObject/DynamicQObject.cpp \
../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder.cpp \
../../DOtherSide/DynamicQObject/private/qmetaobject.cpp \
../../DOtherSide/DynamicQObject/private/qmetatype.cpp \
../../DOtherSide/DynamicQObject/DynamicSignal.cpp \
../../DOtherSide/DynamicQObject/DynamicSlot.cpp
QMAKE_TARGET = DynamicQObject
DESTDIR = #avoid trailing-slash linebreak
TARGET = libDynamicQObject.a
first: all
####### Implicit rules
.SUFFIXES: .o .c .cpp .cc .cxx .C
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
####### Build rules
all: Makefile $(TARGET)
staticlib: $(TARGET)
$(TARGET): $(OBJECTS) $(OBJCOMP)
-$(DEL_FILE) $(TARGET)
$(AR) $(TARGET) $(OBJECTS)
Makefile: ../../DOtherSide/DynamicQObject/DynamicQObject.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/DynamicQObject/DynamicQObject.pro \
/usr/lib/libQt5Core.prl
$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/DynamicQObject/DynamicQObject.pro
/usr/lib/qt/mkspecs/features/spec_pre.prf:
/usr/lib/qt/mkspecs/common/shell-unix.conf:
/usr/lib/qt/mkspecs/common/unix.conf:
/usr/lib/qt/mkspecs/common/linux.conf:
/usr/lib/qt/mkspecs/common/gcc-base.conf:
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
/usr/lib/qt/mkspecs/common/g++-base.conf:
/usr/lib/qt/mkspecs/common/g++-unix.conf:
/usr/lib/qt/mkspecs/qconfig.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
/usr/lib/qt/mkspecs/features/qt_functions.prf:
/usr/lib/qt/mkspecs/features/qt_config.prf:
/usr/lib/qt/mkspecs/linux-g++/qmake.conf:
/usr/lib/qt/mkspecs/features/spec_post.prf:
/usr/lib/qt/mkspecs/features/exclusive_builds.prf:
/usr/lib/qt/mkspecs/features/default_pre.prf:
/usr/lib/qt/mkspecs/features/resolve_config.prf:
/usr/lib/qt/mkspecs/features/default_post.prf:
/usr/lib/qt/mkspecs/features/c++11.prf:
/usr/lib/qt/mkspecs/features/warn_on.prf:
/usr/lib/qt/mkspecs/features/qt.prf:
/usr/lib/qt/mkspecs/features/resources.prf:
/usr/lib/qt/mkspecs/features/moc.prf:
/usr/lib/qt/mkspecs/features/unix/thread.prf:
/usr/lib/qt/mkspecs/features/testcase_targets.prf:
/usr/lib/qt/mkspecs/features/exceptions.prf:
/usr/lib/qt/mkspecs/features/yacc.prf:
/usr/lib/qt/mkspecs/features/lex.prf:
../../DOtherSide/DynamicQObject/DynamicQObject.pro:
/usr/lib/libQt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/DynamicQObject/DynamicQObject.pro
qmake_all: FORCE
dist:
@test -d .tmp/DynamicQObject1.0.0 || mkdir -p .tmp/DynamicQObject1.0.0
$(COPY_FILE) --parents $(DIST) .tmp/DynamicQObject1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/DynamicQObject/DynamicQObject.h ../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder_p.h ../../DOtherSide/DynamicQObject/private/qmetaobject_p.h ../../DOtherSide/DynamicQObject/private/qobject_p.h ../../DOtherSide/DynamicQObject/private/qmetaobject_moc_p.h ../../DOtherSide/DynamicQObject/private/qmetaobject.h ../../DOtherSide/DynamicQObject/private/qmetatype_p.h ../../DOtherSide/DynamicQObject/private/qmetatype.h ../../DOtherSide/DynamicQObject/private/qmetatypeswitcher_p.h ../../DOtherSide/DynamicQObject/DynamicSignal.h ../../DOtherSide/DynamicQObject/DynamicSlot.h .tmp/DynamicQObject1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/DynamicQObject/DynamicQObject.cpp ../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder.cpp ../../DOtherSide/DynamicQObject/private/qmetaobject.cpp ../../DOtherSide/DynamicQObject/private/qmetatype.cpp ../../DOtherSide/DynamicQObject/DynamicSignal.cpp ../../DOtherSide/DynamicQObject/DynamicSlot.cpp .tmp/DynamicQObject1.0.0/ && (cd `dirname .tmp/DynamicQObject1.0.0` && $(TAR) DynamicQObject1.0.0.tar DynamicQObject1.0.0 && $(COMPRESS) DynamicQObject1.0.0.tar) && $(MOVE) `dirname .tmp/DynamicQObject1.0.0`/DynamicQObject1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/DynamicQObject1.0.0
clean:compiler_clean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) *~ core *.core
distclean: clean
-$(DEL_FILE) $(TARGET)
-$(DEL_FILE) Makefile
####### Sub-libraries
mocclean: compiler_moc_header_clean compiler_moc_source_clean
mocables: compiler_moc_header_make_all compiler_moc_source_make_all
check: first
compiler_rcc_make_all:
compiler_rcc_clean:
compiler_moc_header_make_all:
compiler_moc_header_clean:
compiler_moc_source_make_all:
compiler_moc_source_clean:
compiler_yacc_decl_make_all:
compiler_yacc_decl_clean:
compiler_yacc_impl_make_all:
compiler_yacc_impl_clean:
compiler_lex_make_all:
compiler_lex_clean:
compiler_clean:
####### Compile
DynamicQObject.o: ../../DOtherSide/DynamicQObject/DynamicQObject.cpp ../../DOtherSide/DynamicQObject/DynamicQObject.h \
../../DOtherSide/DynamicQObject/DynamicSignal.h \
../../DOtherSide/DynamicQObject/DynamicSlot.h \
../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o DynamicQObject.o ../../DOtherSide/DynamicQObject/DynamicQObject.cpp
qmetaobjectbuilder.o: ../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder.cpp ../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder_p.h \
../../DOtherSide/DynamicQObject/private/qobject_p.h \
../../DOtherSide/DynamicQObject/private/qmetaobject_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o qmetaobjectbuilder.o ../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder.cpp
qmetaobject.o: ../../DOtherSide/DynamicQObject/private/qmetaobject.cpp ../../DOtherSide/DynamicQObject/private/qmetaobject.h \
../../DOtherSide/DynamicQObject/private/qmetatype.h \
../../DOtherSide/DynamicQObject/private/qmetaobject_p.h \
../../DOtherSide/DynamicQObject/private/qobject_p.h \
../../DOtherSide/DynamicQObject/private/qmetaobject_moc_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o qmetaobject.o ../../DOtherSide/DynamicQObject/private/qmetaobject.cpp
qmetatype.o: ../../DOtherSide/DynamicQObject/private/qmetatype.cpp ../../DOtherSide/DynamicQObject/private/qmetatype.h \
../../DOtherSide/DynamicQObject/private/qmetatype_p.h \
../../DOtherSide/DynamicQObject/private/qmetatypeswitcher_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o qmetatype.o ../../DOtherSide/DynamicQObject/private/qmetatype.cpp
DynamicSignal.o: ../../DOtherSide/DynamicQObject/DynamicSignal.cpp ../../DOtherSide/DynamicQObject/DynamicSignal.h \
../../DOtherSide/DynamicQObject/DynamicQObject.h \
../../DOtherSide/DynamicQObject/DynamicSlot.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o DynamicSignal.o ../../DOtherSide/DynamicQObject/DynamicSignal.cpp
DynamicSlot.o: ../../DOtherSide/DynamicQObject/DynamicSlot.cpp ../../DOtherSide/DynamicQObject/DynamicSlot.h \
../../DOtherSide/DynamicQObject/private/qmetaobjectbuilder_p.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o DynamicSlot.o ../../DOtherSide/DynamicQObject/DynamicSlot.cpp
####### Install
install: FORCE
uninstall: FORCE
FORCE:

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,464 @@
#############################################################################
# Makefile for building: IntegrationTest
# Generated by qmake (3.0) (Qt 5.3.1)
# Project: ../../DOtherSide/IntegrationTest/IntegrationTest.pro
# Template: app
# Command: /usr/bin/qmake-qt5 -spec linux-g++ -o Makefile ../../DOtherSide/IntegrationTest/IntegrationTest.pro
#############################################################################
MAKEFILE = Makefile
####### Compiler, tools and options
CC = gcc
CXX = g++
DEFINES = -DQT_NO_DEBUG -DQT_QUICK_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_GUI_LIB -DQT_CORE_LIB
CFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -Wall -W -D_REENTRANT -fPIE $(DEFINES)
CXXFLAGS = -pipe -march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong --param=ssp-buffer-size=4 -std=c++0x -Wall -W -D_REENTRANT -fPIE $(DEFINES)
INCPATH = -I/usr/lib/qt/mkspecs/linux-g++ -I../../DOtherSide/IntegrationTest -I../../DOtherSide/DynamicQObject -isystem /usr/include/qt -isystem /usr/include/qt/QtQuick -isystem /usr/include/qt/QtQml -isystem /usr/include/qt/QtNetwork -isystem /usr/include/qt/QtGui -isystem /usr/include/qt/QtCore -I/home/filippo/Desktop/build/IntegrationTest -I.
LINK = g++
LFLAGS = -Wl,-O1,--sort-common,--as-needed,-z,relro -Wl,-O1
LIBS = $(SUBLIBS) -L/home/filippo/Desktop/build/IntegrationTest/../DynamicQObject/ -lDynamicQObject -lQt5Quick -lQt5Qml -lQt5Network -lQt5Gui -lQt5Core -lGL -lpthread
AR = ar cqs
RANLIB =
QMAKE = /usr/bin/qmake-qt5
TAR = tar -cf
COMPRESS = gzip -9f
COPY = cp -f
SED = sed
COPY_FILE = cp -f
COPY_DIR = cp -f -R
STRIP = strip
INSTALL_FILE = install -m 644 -p
INSTALL_DIR = $(COPY_DIR)
INSTALL_PROGRAM = install -m 755 -p
DEL_FILE = rm -f
SYMLINK = ln -f -s
DEL_DIR = rmdir
MOVE = mv -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
####### Output directory
OBJECTS_DIR = ./
####### Files
SOURCES = ../../DOtherSide/IntegrationTest/main.cpp qrc_qml.cpp
OBJECTS = main.o \
qrc_qml.o
DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
../../DOtherSide/IntegrationTest/deployment.pri \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/opengl.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/IntegrationTest/IntegrationTest.pro ../../DOtherSide/IntegrationTest/main.cpp
QMAKE_TARGET = IntegrationTest
DESTDIR = #avoid trailing-slash linebreak
TARGET = IntegrationTest
first: all
####### Implicit rules
.SUFFIXES: .o .c .cpp .cc .cxx .C
.cpp.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cc.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.cxx.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.C.o:
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o "$@" "$<"
.c.o:
$(CC) -c $(CFLAGS) $(INCPATH) -o "$@" "$<"
####### Build rules
all: Makefile $(TARGET)
$(TARGET): /home/filippo/Desktop/build/IntegrationTest/../DynamicQObject/libDynamicQObject.a $(OBJECTS)
$(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
Makefile: ../../DOtherSide/IntegrationTest/IntegrationTest.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
../../DOtherSide/IntegrationTest/deployment.pri \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/c++11.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/qt.prf \
/usr/lib/qt/mkspecs/features/resources.prf \
/usr/lib/qt/mkspecs/features/moc.prf \
/usr/lib/qt/mkspecs/features/unix/opengl.prf \
/usr/lib/qt/mkspecs/features/unix/thread.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../../DOtherSide/IntegrationTest/IntegrationTest.pro \
../../DOtherSide/IntegrationTest/qml.qrc \
/usr/lib/libQt5Quick.prl \
/usr/lib/libQt5Qml.prl \
/usr/lib/libQt5Network.prl \
/usr/lib/libQt5Gui.prl \
/usr/lib/libQt5Core.prl
$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/IntegrationTest/IntegrationTest.pro
/usr/lib/qt/mkspecs/features/spec_pre.prf:
/usr/lib/qt/mkspecs/common/shell-unix.conf:
/usr/lib/qt/mkspecs/common/unix.conf:
/usr/lib/qt/mkspecs/common/linux.conf:
/usr/lib/qt/mkspecs/common/gcc-base.conf:
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
/usr/lib/qt/mkspecs/common/g++-base.conf:
/usr/lib/qt/mkspecs/common/g++-unix.conf:
/usr/lib/qt/mkspecs/qconfig.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
/usr/lib/qt/mkspecs/features/qt_functions.prf:
/usr/lib/qt/mkspecs/features/qt_config.prf:
/usr/lib/qt/mkspecs/linux-g++/qmake.conf:
/usr/lib/qt/mkspecs/features/spec_post.prf:
/usr/lib/qt/mkspecs/features/exclusive_builds.prf:
/usr/lib/qt/mkspecs/features/default_pre.prf:
../../DOtherSide/IntegrationTest/deployment.pri:
/usr/lib/qt/mkspecs/features/resolve_config.prf:
/usr/lib/qt/mkspecs/features/default_post.prf:
/usr/lib/qt/mkspecs/features/c++11.prf:
/usr/lib/qt/mkspecs/features/warn_on.prf:
/usr/lib/qt/mkspecs/features/qt.prf:
/usr/lib/qt/mkspecs/features/resources.prf:
/usr/lib/qt/mkspecs/features/moc.prf:
/usr/lib/qt/mkspecs/features/unix/opengl.prf:
/usr/lib/qt/mkspecs/features/unix/thread.prf:
/usr/lib/qt/mkspecs/features/testcase_targets.prf:
/usr/lib/qt/mkspecs/features/exceptions.prf:
/usr/lib/qt/mkspecs/features/yacc.prf:
/usr/lib/qt/mkspecs/features/lex.prf:
../../DOtherSide/IntegrationTest/IntegrationTest.pro:
../../DOtherSide/IntegrationTest/qml.qrc:
/usr/lib/libQt5Quick.prl:
/usr/lib/libQt5Qml.prl:
/usr/lib/libQt5Network.prl:
/usr/lib/libQt5Gui.prl:
/usr/lib/libQt5Core.prl:
qmake: FORCE
@$(QMAKE) -spec linux-g++ -o Makefile ../../DOtherSide/IntegrationTest/IntegrationTest.pro
qmake_all: FORCE
dist:
@test -d .tmp/IntegrationTest1.0.0 || mkdir -p .tmp/IntegrationTest1.0.0
$(COPY_FILE) --parents $(DIST) .tmp/IntegrationTest1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/IntegrationTest/qml.qrc .tmp/IntegrationTest1.0.0/ && $(COPY_FILE) --parents ../../DOtherSide/IntegrationTest/main.cpp .tmp/IntegrationTest1.0.0/ && (cd `dirname .tmp/IntegrationTest1.0.0` && $(TAR) IntegrationTest1.0.0.tar IntegrationTest1.0.0 && $(COMPRESS) IntegrationTest1.0.0.tar) && $(MOVE) `dirname .tmp/IntegrationTest1.0.0`/IntegrationTest1.0.0.tar.gz . && $(DEL_FILE) -r .tmp/IntegrationTest1.0.0
clean:compiler_clean
-$(DEL_FILE) $(OBJECTS)
-$(DEL_FILE) *~ core *.core
distclean: clean
-$(DEL_FILE) $(TARGET)
-$(DEL_FILE) Makefile
####### Sub-libraries
mocclean: compiler_moc_header_clean compiler_moc_source_clean
mocables: compiler_moc_header_make_all compiler_moc_source_make_all
check: first
compiler_rcc_make_all: qrc_qml.cpp
compiler_rcc_clean:
-$(DEL_FILE) qrc_qml.cpp
qrc_qml.cpp: ../../DOtherSide/IntegrationTest/qml.qrc \
../../DOtherSide/IntegrationTest/main.qml
/usr/lib/qt/bin/rcc -name qml ../../DOtherSide/IntegrationTest/qml.qrc -o qrc_qml.cpp
compiler_moc_header_make_all:
compiler_moc_header_clean:
compiler_moc_source_make_all:
compiler_moc_source_clean:
compiler_yacc_decl_make_all:
compiler_yacc_decl_clean:
compiler_yacc_impl_make_all:
compiler_yacc_impl_clean:
compiler_lex_make_all:
compiler_lex_clean:
compiler_clean: compiler_rcc_clean
####### Compile
main.o: ../../DOtherSide/IntegrationTest/main.cpp ../../DOtherSide/DynamicQObject/DynamicQObject.h \
../../DOtherSide/DynamicQObject/DynamicSignal.h \
../../DOtherSide/DynamicQObject/DynamicSlot.h
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o main.o ../../DOtherSide/IntegrationTest/main.cpp
qrc_qml.o: qrc_qml.cpp
$(CXX) -c $(CXXFLAGS) $(INCPATH) -o qrc_qml.o qrc_qml.cpp
####### Install
install_target: first FORCE
@test -d $(INSTALL_ROOT)/opt/IntegrationTest/bin || mkdir -p $(INSTALL_ROOT)/opt/IntegrationTest/bin
-$(INSTALL_PROGRAM) "$(QMAKE_TARGET)" "$(INSTALL_ROOT)/opt/IntegrationTest/bin/$(QMAKE_TARGET)"
-$(STRIP) "$(INSTALL_ROOT)/opt/IntegrationTest/bin/$(QMAKE_TARGET)"
uninstall_target: FORCE
-$(DEL_FILE) "$(INSTALL_ROOT)/opt/IntegrationTest/bin/$(QMAKE_TARGET)"
-$(DEL_DIR) $(INSTALL_ROOT)/opt/IntegrationTest/bin/
install: install_target FORCE
uninstall: uninstall_target FORCE
FORCE:

Binary file not shown.

View File

@ -0,0 +1,98 @@
/****************************************************************************
** Resource object code
**
** Created by: The Resource Compiler for Qt version 5.3.1
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/
#include <QtCore/qglobal.h>
static const unsigned char qt_resource_data[] = {
// /home/filippo/Desktop/DOtherSide/IntegrationTest/main.qml
0x0,0x0,0x2,0x27,
0x69,
0x6d,0x70,0x6f,0x72,0x74,0x20,0x51,0x74,0x51,0x75,0x69,0x63,0x6b,0x20,0x32,0x2e,
0x32,0xa,0x69,0x6d,0x70,0x6f,0x72,0x74,0x20,0x51,0x74,0x51,0x75,0x69,0x63,0x6b,
0x2e,0x57,0x69,0x6e,0x64,0x6f,0x77,0x20,0x32,0x2e,0x31,0xa,0xa,0x57,0x69,0x6e,
0x64,0x6f,0x77,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x76,0x69,0x73,0x69,0x62,0x6c,
0x65,0x3a,0x20,0x74,0x72,0x75,0x65,0xa,0x20,0x20,0x20,0x20,0x77,0x69,0x64,0x74,
0x68,0x3a,0x20,0x33,0x36,0x30,0xa,0x20,0x20,0x20,0x20,0x68,0x65,0x69,0x67,0x68,
0x74,0x3a,0x20,0x33,0x36,0x30,0xa,0xa,0x20,0x20,0x20,0x20,0x4d,0x6f,0x75,0x73,
0x65,0x41,0x72,0x65,0x61,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
0x61,0x6e,0x63,0x68,0x6f,0x72,0x73,0x2e,0x66,0x69,0x6c,0x6c,0x3a,0x20,0x70,0x61,
0x72,0x65,0x6e,0x74,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x6f,0x6e,0x43,
0x6c,0x69,0x63,0x6b,0x65,0x64,0x3a,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x51,0x74,0x2e,0x71,0x75,0x69,0x74,0x28,0x29,0x3b,
0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x7d,0xa,0x20,0x20,0x20,0x20,0x7d,
0xa,0xa,0x20,0x20,0x20,0x20,0x54,0x65,0x78,0x74,0x20,0x7b,0xa,0x20,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x74,0x65,0x78,0x74,0x3a,0x20,0x71,0x73,0x54,0x72,0x28,
0x22,0x48,0x65,0x6c,0x6c,0x6f,0x20,0x57,0x6f,0x72,0x6c,0x64,0x22,0x29,0xa,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x61,0x6e,0x63,0x68,0x6f,0x72,0x73,0x2e,0x63,
0x65,0x6e,0x74,0x65,0x72,0x49,0x6e,0x3a,0x20,0x70,0x61,0x72,0x65,0x6e,0x74,0xa,
0x20,0x20,0x20,0x20,0x7d,0xa,0xa,0x20,0x20,0x20,0x20,0x43,0x6f,0x6d,0x70,0x6f,
0x6e,0x65,0x6e,0x74,0x2e,0x6f,0x6e,0x43,0x6f,0x6d,0x70,0x6c,0x65,0x74,0x65,0x64,
0x3a,0x20,0x7b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,0x6f,0x6e,0x73,
0x6f,0x6c,0x65,0x2e,0x6c,0x6f,0x67,0x28,0x64,0x79,0x6e,0x61,0x6d,0x69,0x63,0x51,
0x4f,0x62,0x6a,0x65,0x63,0x74,0x29,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,
0x76,0x61,0x72,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x3d,0x20,0x30,0x3b,0xa,
0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x3d,
0x20,0x64,0x79,0x6e,0x61,0x6d,0x69,0x63,0x51,0x4f,0x62,0x6a,0x65,0x63,0x74,0x2e,
0x66,0x6f,0x6f,0x28,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,
0x6f,0x6e,0x73,0x6f,0x6c,0x65,0x2e,0x6c,0x6f,0x67,0x28,0x22,0x52,0x65,0x73,0x75,
0x6c,0x74,0x3a,0x22,0x2c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x29,0xa,0x20,0x20,
0x20,0x20,0x20,0x20,0x20,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x20,0x3d,0x20,0x64,
0x79,0x6e,0x61,0x6d,0x69,0x63,0x51,0x4f,0x62,0x6a,0x65,0x63,0x74,0x2e,0x62,0x61,
0x72,0x28,0x31,0x30,0x29,0x3b,0xa,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x20,0x63,
0x6f,0x6e,0x73,0x6f,0x6c,0x65,0x2e,0x6c,0x6f,0x67,0x28,0x22,0x52,0x65,0x73,0x75,
0x6c,0x74,0x3a,0x22,0x2c,0x20,0x72,0x65,0x73,0x75,0x6c,0x74,0x29,0xa,0x20,0x20,
0x20,0x20,0x7d,0xa,0x7d,0xa,
};
static const unsigned char qt_resource_name[] = {
// main.qml
0x0,0x8,
0x8,0x1,0x5a,0x5c,
0x0,0x6d,
0x0,0x61,0x0,0x69,0x0,0x6e,0x0,0x2e,0x0,0x71,0x0,0x6d,0x0,0x6c,
};
static const unsigned char qt_resource_struct[] = {
// :
0x0,0x0,0x0,0x0,0x0,0x2,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x1,
// :/main.qml
0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1,0x0,0x0,0x0,0x0,
};
QT_BEGIN_NAMESPACE
extern Q_CORE_EXPORT bool qRegisterResourceData
(int, const unsigned char *, const unsigned char *, const unsigned char *);
extern Q_CORE_EXPORT bool qUnregisterResourceData
(int, const unsigned char *, const unsigned char *, const unsigned char *);
QT_END_NAMESPACE
int QT_MANGLE_NAMESPACE(qInitResources_qml)()
{
QT_PREPEND_NAMESPACE(qRegisterResourceData)
(0x01, qt_resource_struct, qt_resource_name, qt_resource_data);
return 1;
}
Q_CONSTRUCTOR_FUNCTION(QT_MANGLE_NAMESPACE(qInitResources_qml))
int QT_MANGLE_NAMESPACE(qCleanupResources_qml)()
{
QT_PREPEND_NAMESPACE(qUnregisterResourceData)
(0x01, qt_resource_struct, qt_resource_name, qt_resource_data);
return 1;
}
Q_DESTRUCTOR_FUNCTION(QT_MANGLE_NAMESPACE(qCleanupResources_qml))

Binary file not shown.

420
build/Makefile Normal file
View File

@ -0,0 +1,420 @@
#############################################################################
# Makefile for building: DOtherSide
# Generated by qmake (3.0) (Qt 5.3.1)
# Project: ../DOtherSide/DOtherSide.pro
# Template: subdirs
# Command: /usr/bin/qmake-qt5 -spec linux-g++ -o Makefile ../DOtherSide/DOtherSide.pro
#############################################################################
MAKEFILE = Makefile
first: make_first
QMAKE = /usr/bin/qmake-qt5
DEL_FILE = rm -f
CHK_DIR_EXISTS= test -d
MKDIR = mkdir -p
COPY = cp -f
COPY_FILE = cp -f
COPY_DIR = cp -f -R
INSTALL_FILE = install -m 644 -p
INSTALL_PROGRAM = install -m 755 -p
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = rm -f
SYMLINK = ln -f -s
DEL_DIR = rmdir
MOVE = mv -f
SUBTARGETS = \
sub-DynamicQObject \
sub-DOtherSide \
sub-DynamicObjectTest \
sub-IntegrationTest
sub-DynamicQObject-qmake_all: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile
cd DynamicQObject/ && $(MAKE) -f Makefile qmake_all
sub-DynamicQObject: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DynamicQObject-make_first-ordered: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DynamicQObject-make_first: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DynamicQObject-all-ordered: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-DynamicQObject-all: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-DynamicQObject-clean-ordered: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-DynamicQObject-clean: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-DynamicQObject-distclean-ordered: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-DynamicQObject-distclean: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-DynamicQObject-install_subtargets-ordered: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-DynamicQObject-install_subtargets: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-DynamicQObject-uninstall_subtargets-ordered: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
sub-DynamicQObject-uninstall_subtargets: FORCE
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
sub-DOtherSide-qmake_all: sub-DynamicQObject-qmake_all FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile
cd DOtherSide/ && $(MAKE) -f Makefile qmake_all
sub-DOtherSide: FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DOtherSide-make_first-ordered: sub-DynamicQObject-make_first-ordered FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DOtherSide-make_first: FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DOtherSide-all-ordered: sub-DynamicQObject-all-ordered FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-DOtherSide-all: FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-DOtherSide-clean-ordered: sub-DynamicQObject-clean-ordered FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-DOtherSide-clean: FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-DOtherSide-distclean-ordered: sub-DynamicQObject-distclean-ordered FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-DOtherSide-distclean: FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-DOtherSide-install_subtargets-ordered: sub-DynamicQObject-install_subtargets-ordered FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-DOtherSide-install_subtargets: FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-DOtherSide-uninstall_subtargets-ordered: sub-DynamicQObject-uninstall_subtargets-ordered FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
sub-DOtherSide-uninstall_subtargets: FORCE
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
sub-DynamicObjectTest-qmake_all: sub-DOtherSide-qmake_all FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile
cd DynamicObjectTest/ && $(MAKE) -f Makefile qmake_all
sub-DynamicObjectTest: FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DynamicObjectTest-make_first-ordered: sub-DOtherSide-make_first-ordered FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DynamicObjectTest-make_first: FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-DynamicObjectTest-all-ordered: sub-DOtherSide-all-ordered FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-DynamicObjectTest-all: FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-DynamicObjectTest-clean-ordered: sub-DOtherSide-clean-ordered FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-DynamicObjectTest-clean: FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-DynamicObjectTest-distclean-ordered: sub-DOtherSide-distclean-ordered FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-DynamicObjectTest-distclean: FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-DynamicObjectTest-install_subtargets-ordered: sub-DOtherSide-install_subtargets-ordered FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-DynamicObjectTest-install_subtargets: FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-DynamicObjectTest-uninstall_subtargets-ordered: sub-DOtherSide-uninstall_subtargets-ordered FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
sub-DynamicObjectTest-uninstall_subtargets: FORCE
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
sub-IntegrationTest-qmake_all: sub-DynamicObjectTest-qmake_all FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile
cd IntegrationTest/ && $(MAKE) -f Makefile qmake_all
sub-IntegrationTest: FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-IntegrationTest-make_first-ordered: sub-DynamicObjectTest-make_first-ordered FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-IntegrationTest-make_first: FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile
sub-IntegrationTest-all-ordered: sub-DynamicObjectTest-all-ordered FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-IntegrationTest-all: FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile all
sub-IntegrationTest-clean-ordered: sub-DynamicObjectTest-clean-ordered FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-IntegrationTest-clean: FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile clean
sub-IntegrationTest-distclean-ordered: sub-DynamicObjectTest-distclean-ordered FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-IntegrationTest-distclean: FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile distclean
sub-IntegrationTest-install_subtargets-ordered: sub-DynamicObjectTest-install_subtargets-ordered FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-IntegrationTest-install_subtargets: FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile install
sub-IntegrationTest-uninstall_subtargets-ordered: sub-DynamicObjectTest-uninstall_subtargets-ordered FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
sub-IntegrationTest-uninstall_subtargets: FORCE
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile uninstall
Makefile: ../DOtherSide/DOtherSide.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
/usr/lib/qt/mkspecs/common/shell-unix.conf \
/usr/lib/qt/mkspecs/common/unix.conf \
/usr/lib/qt/mkspecs/common/linux.conf \
/usr/lib/qt/mkspecs/common/gcc-base.conf \
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
/usr/lib/qt/mkspecs/common/g++-base.conf \
/usr/lib/qt/mkspecs/common/g++-unix.conf \
/usr/lib/qt/mkspecs/qconfig.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri \
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri \
/usr/lib/qt/mkspecs/features/qt_functions.prf \
/usr/lib/qt/mkspecs/features/qt_config.prf \
/usr/lib/qt/mkspecs/linux-g++/qmake.conf \
/usr/lib/qt/mkspecs/features/spec_post.prf \
/usr/lib/qt/mkspecs/features/exclusive_builds.prf \
/usr/lib/qt/mkspecs/features/default_pre.prf \
/usr/lib/qt/mkspecs/features/resolve_config.prf \
/usr/lib/qt/mkspecs/features/default_post.prf \
/usr/lib/qt/mkspecs/features/warn_on.prf \
/usr/lib/qt/mkspecs/features/testcase_targets.prf \
/usr/lib/qt/mkspecs/features/exceptions.prf \
/usr/lib/qt/mkspecs/features/yacc.prf \
/usr/lib/qt/mkspecs/features/lex.prf \
../DOtherSide/DOtherSide.pro
$(QMAKE) -spec linux-g++ -o Makefile ../DOtherSide/DOtherSide.pro
/usr/lib/qt/mkspecs/features/spec_pre.prf:
/usr/lib/qt/mkspecs/common/shell-unix.conf:
/usr/lib/qt/mkspecs/common/unix.conf:
/usr/lib/qt/mkspecs/common/linux.conf:
/usr/lib/qt/mkspecs/common/gcc-base.conf:
/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
/usr/lib/qt/mkspecs/common/g++-base.conf:
/usr/lib/qt/mkspecs/common/g++-unix.conf:
/usr/lib/qt/mkspecs/qconfig.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_bootstrap_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_clucene_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_concurrent_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_core_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_dbus_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_declarative_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designer_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_designercomponents_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_gui_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_help_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimedia_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_multimediawidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_network_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_opengl_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_openglextensions_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_platformsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_positioning_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_printsupport_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmldevtools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qmltest_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_qtmultimediaquicktools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quick_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickparticles_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_quickwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_script_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_scripttools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sensors_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_sql_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_svg_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_testlib_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_uitools_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_v8.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkit_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_webkitwidgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_widgets_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xml_private.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns.pri:
/usr/lib/qt/mkspecs/modules/qt_lib_xmlpatterns_private.pri:
/usr/lib/qt/mkspecs/features/qt_functions.prf:
/usr/lib/qt/mkspecs/features/qt_config.prf:
/usr/lib/qt/mkspecs/linux-g++/qmake.conf:
/usr/lib/qt/mkspecs/features/spec_post.prf:
/usr/lib/qt/mkspecs/features/exclusive_builds.prf:
/usr/lib/qt/mkspecs/features/default_pre.prf:
/usr/lib/qt/mkspecs/features/resolve_config.prf:
/usr/lib/qt/mkspecs/features/default_post.prf:
/usr/lib/qt/mkspecs/features/warn_on.prf:
/usr/lib/qt/mkspecs/features/testcase_targets.prf:
/usr/lib/qt/mkspecs/features/exceptions.prf:
/usr/lib/qt/mkspecs/features/yacc.prf:
/usr/lib/qt/mkspecs/features/lex.prf:
../DOtherSide/DOtherSide.pro:
qmake: FORCE
@$(QMAKE) -spec linux-g++ -o Makefile ../DOtherSide/DOtherSide.pro
qmake_all: sub-DynamicQObject-qmake_all sub-DOtherSide-qmake_all sub-DynamicObjectTest-qmake_all sub-IntegrationTest-qmake_all FORCE
make_first: sub-DynamicQObject-make_first-ordered sub-DOtherSide-make_first-ordered sub-DynamicObjectTest-make_first-ordered sub-IntegrationTest-make_first-ordered FORCE
all: sub-DynamicQObject-all-ordered sub-DOtherSide-all-ordered sub-DynamicObjectTest-all-ordered sub-IntegrationTest-all-ordered FORCE
clean: sub-DynamicQObject-clean-ordered sub-DOtherSide-clean-ordered sub-DynamicObjectTest-clean-ordered sub-IntegrationTest-clean-ordered FORCE
distclean: sub-DynamicQObject-distclean-ordered sub-DOtherSide-distclean-ordered sub-DynamicObjectTest-distclean-ordered sub-IntegrationTest-distclean-ordered FORCE
-$(DEL_FILE) Makefile
install_subtargets: sub-DynamicQObject-install_subtargets-ordered sub-DOtherSide-install_subtargets-ordered sub-DynamicObjectTest-install_subtargets-ordered sub-IntegrationTest-install_subtargets-ordered FORCE
uninstall_subtargets: sub-DynamicQObject-uninstall_subtargets-ordered sub-DOtherSide-uninstall_subtargets-ordered sub-DynamicObjectTest-uninstall_subtargets-ordered sub-IntegrationTest-uninstall_subtargets-ordered FORCE
sub-DynamicQObject-check_ordered:
@test -d DynamicQObject/ || mkdir -p DynamicQObject/
cd DynamicQObject/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicQObject/DynamicQObject.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile check
sub-DOtherSide-check_ordered: sub-DynamicQObject-check_ordered
@test -d DOtherSide/ || mkdir -p DOtherSide/
cd DOtherSide/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DOtherSide/DOtherSide.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile check
sub-DynamicObjectTest-check_ordered: sub-DOtherSide-check_ordered
@test -d DynamicObjectTest/ || mkdir -p DynamicObjectTest/
cd DynamicObjectTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/DynamicObjectTest/DynamicObjectTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile check
sub-IntegrationTest-check_ordered: sub-DynamicObjectTest-check_ordered
@test -d IntegrationTest/ || mkdir -p IntegrationTest/
cd IntegrationTest/ && ( test -e Makefile || $(QMAKE) /home/filippo/Desktop/DOtherSide/IntegrationTest/IntegrationTest.pro -spec linux-g++ -o Makefile ) && $(MAKE) -f Makefile check
check: sub-DynamicQObject-check_ordered sub-DOtherSide-check_ordered sub-DynamicObjectTest-check_ordered sub-IntegrationTest-check_ordered
install: install_subtargets FORCE
uninstall: uninstall_subtargets FORCE
FORCE: