aboutsummaryrefslogtreecommitdiffstats
path: root/misc-host/ELF
diff options
context:
space:
mode:
Diffstat (limited to 'misc-host/ELF')
-rw-r--r--misc-host/ELF/ELF-loader-test/.gitignore1
-rw-r--r--misc-host/ELF/ELF-loader-test/ELF-loader-test.pro19
-rw-r--r--misc-host/ELF/ELF-loader-test/ELF-loader-test.pro.user472
-rw-r--r--misc-host/ELF/ELF-loader-test/bootloader_compat.cpp18
-rw-r--r--misc-host/ELF/ELF-loader-test/bootloader_compat.h35
-rw-r--r--misc-host/ELF/ELF-loader-test/datatypes.h16
-rw-r--r--misc-host/ELF/ELF-loader-test/deployment.pri191
-rw-r--r--misc-host/ELF/ELF-loader-test/elf64header.h97
-rw-r--r--misc-host/ELF/ELF-loader-test/elfinfoprint.cpp74
-rw-r--r--misc-host/ELF/ELF-loader-test/elfinfoprint.h12
-rw-r--r--misc-host/ELF/ELF-loader-test/main.cpp12
-rw-r--r--misc-host/ELF/build-ELF-loader-test-Clang-Debug/.gitignore2
-rw-r--r--misc-host/ELF/build-ELF-loader-test-Clang-Debug/Makefile590
-rw-r--r--misc-host/ELF/build-ELF-loader-test-GCC-Debug/Makefile593
14 files changed, 2132 insertions, 0 deletions
diff --git a/misc-host/ELF/ELF-loader-test/.gitignore b/misc-host/ELF/ELF-loader-test/.gitignore
new file mode 100644
index 0000000..ee4c926
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/.gitignore
@@ -0,0 +1 @@
+/test
diff --git a/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro b/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro
new file mode 100644
index 0000000..b945d81
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro
@@ -0,0 +1,19 @@
+TEMPLATE = app
+CONFIG += console
+CONFIG -= app_bundle
+CONFIG -= qt
+
+SOURCES += \
+ elfinfoprint.cpp \
+ main.cpp \
+ bootloader_compat.cpp
+
+include(deployment.pri)
+qtcAddDeployment()
+
+HEADERS += \
+ datatypes.h \
+ elf64header.h \
+ elfinfoprint.h \
+ bootloader_compat.h
+
diff --git a/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro.user b/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro.user
new file mode 100644
index 0000000..243fdee
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro.user
@@ -0,0 +1,472 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE QtCreatorProject>
+<!-- Written by QtCreator 3.5.0, 2015-10-08T00:19:07. -->
+<qtcreator>
+ <data>
+ <variable>EnvironmentId</variable>
+ <value type="QByteArray">{2c3e9189-5d42-4938-9849-c0bb2ac935ae}</value>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.ActiveTarget</variable>
+ <value type="int">1</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">GCC</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">GCC</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{d432c706-8e6f-4f4f-92f1-4099cda2d690}</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/ornitorrincos/OS-github/misc-host/ELF/build-ELF-loader-test-GCC-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>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">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/ornitorrincos/OS-github/misc-host/ELF/build-ELF-loader-test-GCC-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>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">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">ELF-loader-test</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/ornitorrincos/OS-github/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro</value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">ELF-loader-test.pro</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">true</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.Target.1</variable>
+ <valuemap type="QVariantMap">
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clang</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Clang</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">{e689128d-986e-453c-9cd3-1600795ccd25}</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/ornitorrincos/OS-github/misc-host/ELF/build-ELF-loader-test-Clang-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>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">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/ornitorrincos/OS-github/misc-host/ELF/build-ELF-loader-test-Clang-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>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.SeparateDebugInfo">false</value>
+ <value type="bool" key="QtProjectManager.QMakeBuildStep.UseQtQuickCompiler">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">ELF-loader-test</value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value>
+ <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration:/home/ornitorrincos/OS-github/misc-host/ELF/ELF-loader-test/ELF-loader-test.pro</value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value>
+ <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">ELF-loader-test.pro</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value>
+ <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">true</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">2</value>
+ </data>
+ <data>
+ <variable>ProjectExplorer.Project.Updater.FileVersion</variable>
+ <value type="int">18</value>
+ </data>
+ <data>
+ <variable>Version</variable>
+ <value type="int">18</value>
+ </data>
+</qtcreator>
diff --git a/misc-host/ELF/ELF-loader-test/bootloader_compat.cpp b/misc-host/ELF/ELF-loader-test/bootloader_compat.cpp
new file mode 100644
index 0000000..038e597
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/bootloader_compat.cpp
@@ -0,0 +1,18 @@
+#include "bootloader_compat.h"
+#include <stdio.h>
+#include <stdlib.h>
+
+UEFIPrint Print = wprintf;
+
+void * EFIAPI LoadFile(char * name, UINTN memtype)
+{
+ FILE * f = fopen(name, "rb");
+ fseek(f, 0, SEEK_END);
+ long fsize = ftell(f);
+ fseek(f, 0, SEEK_SET);
+ char * mem = (char*)malloc(fsize);
+ fread(mem, fsize, 1, f);
+ fclose(f);
+
+ return mem;
+}
diff --git a/misc-host/ELF/ELF-loader-test/bootloader_compat.h b/misc-host/ELF/ELF-loader-test/bootloader_compat.h
new file mode 100644
index 0000000..d6f56a5
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/bootloader_compat.h
@@ -0,0 +1,35 @@
+#ifndef BOOTLOADER_COMPAT_H
+#define BOOTLOADER_COMPAT_H
+
+// partial API of UEFI/bootloader
+
+#include <wchar.h>
+#include <stdint.h>
+
+#define EFIAPI
+#define IN
+#define OUT
+
+// basic UEFI datatypes
+typedef uint8_t BOOLEAN;
+typedef int8_t INT8;
+typedef uint8_t UINT8;
+typedef int16_t INT16;
+typedef uint16_t UINT16;
+typedef int32_t INT32;
+typedef uint32_t UINT32;
+typedef int64_t INT64;
+typedef uint64_t UINT64;
+typedef char CHAR8;
+typedef wchar_t CHAR16;
+typedef uint64_t UINTN;
+
+// UEFI native functions
+typedef int (*UEFIPrint)(const wchar_t *, ...);
+extern UEFIPrint Print;
+
+// Bootloader defined
+void * EFIAPI LoadFile(char * name, UINTN memtype);
+
+#endif // BOOTLOADER_COMPAT_H
+
diff --git a/misc-host/ELF/ELF-loader-test/datatypes.h b/misc-host/ELF/ELF-loader-test/datatypes.h
new file mode 100644
index 0000000..b50c3c8
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/datatypes.h
@@ -0,0 +1,16 @@
+#ifndef DATATYPES_H
+#define DATATYPES_H
+
+#include <stdint.h>
+
+// sizes as defined in the System V ABI
+typedef uint16_t Elf64_Half;
+typedef uint64_t Elf64_Off;
+typedef uint64_t Elf64_Addr;
+typedef int32_t Elf64_Word;
+typedef uint64_t Elf64_Xword;
+
+
+
+#endif // DATATYPES_H
+
diff --git a/misc-host/ELF/ELF-loader-test/deployment.pri b/misc-host/ELF/ELF-loader-test/deployment.pri
new file mode 100644
index 0000000..5f1749f
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/deployment.pri
@@ -0,0 +1,191 @@
+# This file was generated by an application wizard of Qt Creator.
+# The code below handles deployment to Android and Maemo, aswell as copying
+# of the application data to shadow build directories on desktop.
+# It is recommended not to modify this file, since newer versions of Qt Creator
+# may offer an updated version of it.
+
+defineTest(qtcAddDeployment) {
+for(deploymentfolder, DEPLOYMENTFOLDERS) {
+ item = item$${deploymentfolder}
+ greaterThan(QT_MAJOR_VERSION, 4) {
+ itemsources = $${item}.files
+ } else {
+ itemsources = $${item}.sources
+ }
+ $$itemsources = $$eval($${deploymentfolder}.source)
+ itempath = $${item}.path
+ $$itempath= $$eval($${deploymentfolder}.target)
+ export($$itemsources)
+ export($$itempath)
+ DEPLOYMENT += $$item
+}
+
+MAINPROFILEPWD = $$PWD
+
+android-no-sdk {
+ for(deploymentfolder, DEPLOYMENTFOLDERS) {
+ item = item$${deploymentfolder}
+ itemfiles = $${item}.files
+ $$itemfiles = $$eval($${deploymentfolder}.source)
+ itempath = $${item}.path
+ $$itempath = /data/user/qt/$$eval($${deploymentfolder}.target)
+ export($$itemfiles)
+ export($$itempath)
+ INSTALLS += $$item
+ }
+
+ target.path = /data/user/qt
+
+ export(target.path)
+ INSTALLS += target
+} else:android {
+ for(deploymentfolder, DEPLOYMENTFOLDERS) {
+ item = item$${deploymentfolder}
+ itemfiles = $${item}.files
+ $$itemfiles = $$eval($${deploymentfolder}.source)
+ itempath = $${item}.path
+ $$itempath = /assets/$$eval($${deploymentfolder}.target)
+ export($$itemfiles)
+ export($$itempath)
+ INSTALLS += $$item
+ }
+
+ x86 {
+ target.path = /libs/x86
+ } else: armeabi-v7a {
+ target.path = /libs/armeabi-v7a
+ } else {
+ target.path = /libs/armeabi
+ }
+
+ export(target.path)
+ INSTALLS += target
+} else:win32 {
+ copyCommand =
+ for(deploymentfolder, DEPLOYMENTFOLDERS) {
+ source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
+ source = $$replace(source, /, \\)
+ sourcePathSegments = $$split(source, \\)
+ target = $$OUT_PWD/$$eval($${deploymentfolder}.target)/$$last(sourcePathSegments)
+ target = $$replace(target, /, \\)
+ target ~= s,\\\\\\.?\\\\,\\,
+ !isEqual(source,$$target) {
+ !isEmpty(copyCommand):copyCommand += &&
+ isEqual(QMAKE_DIR_SEP, \\) {
+ copyCommand += $(COPY_DIR) \"$$source\" \"$$target\"
+ } else {
+ source = $$replace(source, \\\\, /)
+ target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
+ target = $$replace(target, \\\\, /)
+ copyCommand += test -d \"$$target\" || mkdir -p \"$$target\" && cp -r \"$$source\" \"$$target\"
+ }
+ }
+ }
+ !isEmpty(copyCommand) {
+ copyCommand = @echo Copying application data... && $$copyCommand
+ copydeploymentfolders.commands = $$copyCommand
+ first.depends = $(first) copydeploymentfolders
+ export(first.depends)
+ export(copydeploymentfolders.commands)
+ QMAKE_EXTRA_TARGETS += first copydeploymentfolders
+ }
+} else:ios {
+ copyCommand =
+ for(deploymentfolder, DEPLOYMENTFOLDERS) {
+ source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
+ source = $$replace(source, \\\\, /)
+ target = $CODESIGNING_FOLDER_PATH/$$eval($${deploymentfolder}.target)
+ target = $$replace(target, \\\\, /)
+ sourcePathSegments = $$split(source, /)
+ targetFullPath = $$target/$$last(sourcePathSegments)
+ targetFullPath ~= s,/\\.?/,/,
+ !isEqual(source,$$targetFullPath) {
+ !isEmpty(copyCommand):copyCommand += &&
+ copyCommand += mkdir -p \"$$target\"
+ copyCommand += && cp -r \"$$source\" \"$$target\"
+ }
+ }
+ !isEmpty(copyCommand) {
+ copyCommand = echo Copying application data... && $$copyCommand
+ !isEmpty(QMAKE_POST_LINK): QMAKE_POST_LINK += ";"
+ QMAKE_POST_LINK += "$$copyCommand"
+ export(QMAKE_POST_LINK)
+ }
+} else:unix {
+ maemo5 {
+ desktopfile.files = $${TARGET}.desktop
+ desktopfile.path = /usr/share/applications/hildon
+ icon.files = $${TARGET}64.png
+ icon.path = /usr/share/icons/hicolor/64x64/apps
+ } else:!isEmpty(MEEGO_VERSION_MAJOR) {
+ desktopfile.files = $${TARGET}_harmattan.desktop
+ desktopfile.path = /usr/share/applications
+ icon.files = $${TARGET}80.png
+ icon.path = /usr/share/icons/hicolor/80x80/apps
+ } else { # Assumed to be a Desktop Unix
+ copyCommand =
+ for(deploymentfolder, DEPLOYMENTFOLDERS) {
+ source = $$MAINPROFILEPWD/$$eval($${deploymentfolder}.source)
+ source = $$replace(source, \\\\, /)
+ macx {
+ target = $$OUT_PWD/$${TARGET}.app/Contents/Resources/$$eval($${deploymentfolder}.target)
+ } else {
+ target = $$OUT_PWD/$$eval($${deploymentfolder}.target)
+ }
+ target = $$replace(target, \\\\, /)
+ sourcePathSegments = $$split(source, /)
+ targetFullPath = $$target/$$last(sourcePathSegments)
+ targetFullPath ~= s,/\\.?/,/,
+ !isEqual(source,$$targetFullPath) {
+ !isEmpty(copyCommand):copyCommand += &&
+ copyCommand += $(MKDIR) \"$$target\"
+ copyCommand += && $(COPY_DIR) \"$$source\" \"$$target\"
+ }
+ }
+ !isEmpty(copyCommand) {
+ copyCommand = @echo Copying application data... && $$copyCommand
+ copydeploymentfolders.commands = $$copyCommand
+ first.depends = $(first) copydeploymentfolders
+ export(first.depends)
+ export(copydeploymentfolders.commands)
+ QMAKE_EXTRA_TARGETS += first copydeploymentfolders
+ }
+ }
+ !isEmpty(target.path) {
+ installPrefix = $${target.path}
+ } else {
+ installPrefix = /opt/$${TARGET}
+ }
+ for(deploymentfolder, DEPLOYMENTFOLDERS) {
+ item = item$${deploymentfolder}
+ itemfiles = $${item}.files
+ $$itemfiles = $$eval($${deploymentfolder}.source)
+ itempath = $${item}.path
+ $$itempath = $${installPrefix}/$$eval($${deploymentfolder}.target)
+ export($$itemfiles)
+ export($$itempath)
+ INSTALLS += $$item
+ }
+
+ !isEmpty(desktopfile.path) {
+ export(icon.files)
+ export(icon.path)
+ export(desktopfile.files)
+ export(desktopfile.path)
+ INSTALLS += icon desktopfile
+ }
+
+ isEmpty(target.path) {
+ target.path = $${installPrefix}/bin
+ export(target.path)
+ }
+ INSTALLS += target
+}
+
+export (ICON)
+export (INSTALLS)
+export (DEPLOYMENT)
+export (LIBS)
+export (QMAKE_EXTRA_TARGETS)
+}
+
diff --git a/misc-host/ELF/ELF-loader-test/elf64header.h b/misc-host/ELF/ELF-loader-test/elf64header.h
new file mode 100644
index 0000000..ed83168
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/elf64header.h
@@ -0,0 +1,97 @@
+#ifndef ELF64HEADER_H
+#define ELF64HEADER_H
+
+#include "datatypes.h"
+
+#define EI_NIDENT 16
+
+// ELF header
+typedef struct {
+ unsigned char e_ident[EI_NIDENT];
+ Elf64_Half e_type;
+ Elf64_Half e_machine;
+ Elf64_Word e_version;
+ Elf64_Addr e_entry;
+ Elf64_Off e_phoff;
+ Elf64_Off e_shoff;
+ Elf64_Word e_flags;
+ Elf64_Half e_ehsize;
+ Elf64_Half e_phentsize;
+ Elf64_Half e_phnum;
+ Elf64_Half e_shentsize;
+ Elf64_Half e_shnum;
+ Elf64_Half e_shstrndx;
+} Elf64_Ehdr;
+
+// Section header
+typedef struct {
+ Elf64_Word sh_name;
+ Elf64_Word sh_type;
+ Elf64_Xword sh_flags;
+ Elf64_Addr sh_addr;
+ Elf64_Off sh_offset;
+ Elf64_Xword sh_size;
+ Elf64_Word sh_link;
+ Elf64_Word sh_info;
+ Elf64_Xword sh_addralign;
+ Elf64_Xword sh_entsize;
+} Elf64_Shdr;
+
+// indentification struct
+enum Elf_Ident {
+ EI_MAG0 = 0, // 0x7F
+ EI_MAG1 = 1, // 'E'
+ EI_MAG2 = 2, // 'L'
+ EI_MAG3 = 3, // 'F'
+ EI_CLASS = 4, // Architecture (32/64)
+ EI_DATA = 5, // Byte Order
+ EI_VERSION = 6, // ELF Version
+ EI_OSABI = 7, // OS Specific
+ EI_ABIVERSION = 8, // OS Specific
+ EI_PAD = 9 // Padding
+};
+
+// MAgic Numbers
+#define ELFMAG0 0x7F
+#define ELFMAG1 'E'
+#define ELFMAG2 'L'
+#define ELFMAG3 'F'
+
+#define ELFCLASS64 2
+
+
+enum Elf_Type {
+ ET_NONE = 0, // Unkown Type
+ ET_REL = 1, // Relocatable File
+ ET_EXEC = 2 // Executable File
+};
+
+
+// Machine
+#define EM_X86_64 62
+
+// version
+#define EV_CURRENT 1
+
+// Section header specific values
+# define SHN_UNDEF (0x00) // Undefined/Not present
+
+enum ShT_Types {
+ SHT_NULL = 0,
+ SHT_PROGBITS = 1,
+ SHT_SYMTAB = 2,
+ SHT_STRTAB = 3,
+ SHT_RELA = 4,
+ SHT_NOBITS = 8,
+ SHT_REL = 9,
+};
+
+enum ShT_Attributes {
+ SHF_WRITE = 0x01,
+ SHF_ALLOC = 0x02
+};
+
+
+
+#endif // ELF64HEADER_H
+
diff --git a/misc-host/ELF/ELF-loader-test/elfinfoprint.cpp b/misc-host/ELF/ELF-loader-test/elfinfoprint.cpp
new file mode 100644
index 0000000..d5dcbfd
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/elfinfoprint.cpp
@@ -0,0 +1,74 @@
+#include "elfinfoprint.h"
+
+#include "bootloader_compat.h"
+
+
+bool IsElf(Elf64_Ehdr * header)
+{
+ if(!header)
+ {
+ return false;
+ }
+
+ if(header->e_ident[EI_MAG0] != ELFMAG0) {
+ return false;
+ }
+ if(header->e_ident[EI_MAG1] != ELFMAG1) {
+ return false;
+ }
+ if(header->e_ident[EI_MAG2] != ELFMAG2) {
+ return false;
+ }
+ if(header->e_ident[EI_MAG3] != ELFMAG3) {
+ return false;
+ }
+
+ return true;
+}
+
+void ElfInfoPrint(Elf64_Ehdr * header)
+{
+ // check if actual elf file
+ if(!IsElf(header))
+ {
+ Print(L"Not an ELF File\n");
+ return;
+ }
+
+ if(header->e_type == ET_EXEC)
+ {
+ Print(L"Executable file\n");
+ }
+
+ if(header->e_machine == EM_X86_64)
+ {
+ Print(L"AMD64 Machine\n");
+ } else
+ {
+ Print(L"Unrecorginzed Machine\n");
+ }
+
+ Print(L"Entry point: hx%x\n", header->e_entry);
+
+
+ char * strtable = elf_str_table(header);
+ Print(L"%s\n", strtable);
+}
+
+// functions to access section headers
+Elf64_Shdr *elf_sheader(Elf64_Ehdr *hdr)
+{
+ return (Elf64_Shdr *)((uintptr_t)hdr + hdr->e_shoff);
+}
+
+Elf64_Shdr *elf_section(Elf64_Ehdr *hdr, int idx)
+{
+ return &elf_sheader(hdr)[idx];
+}
+
+char *elf_str_table(Elf64_Ehdr *hdr)
+{
+ if(hdr->e_shstrndx == SHN_UNDEF) return NULL;
+ return (char *)hdr + elf_section(hdr, hdr->e_shstrndx)->sh_offset;
+}
+
diff --git a/misc-host/ELF/ELF-loader-test/elfinfoprint.h b/misc-host/ELF/ELF-loader-test/elfinfoprint.h
new file mode 100644
index 0000000..2f61860
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/elfinfoprint.h
@@ -0,0 +1,12 @@
+#ifndef ELFINFOPRINT_H
+#define ELFINFOPRINT_H
+
+
+#include "elf64header.h"
+
+void ElfInfoPrint(Elf64_Ehdr * header);
+
+Elf64_Shdr *elf_sheader(Elf64_Ehdr *hdr);
+Elf64_Shdr *elf_section(Elf64_Ehdr *hdr, int idx);
+char *elf_str_table(Elf64_Ehdr *hdr);
+#endif // ELFINFOPRINT_H
diff --git a/misc-host/ELF/ELF-loader-test/main.cpp b/misc-host/ELF/ELF-loader-test/main.cpp
new file mode 100644
index 0000000..30b44bf
--- /dev/null
+++ b/misc-host/ELF/ELF-loader-test/main.cpp
@@ -0,0 +1,12 @@
+#include <stdio.h>
+#include "bootloader_compat.h"
+#include "elfinfoprint.h"
+
+int main(void)
+{
+ void * kernel = LoadFile("kernel.bin", 0);
+
+ ElfInfoPrint((Elf64_Ehdr *)kernel);
+ return 0;
+}
+
diff --git a/misc-host/ELF/build-ELF-loader-test-Clang-Debug/.gitignore b/misc-host/ELF/build-ELF-loader-test-Clang-Debug/.gitignore
new file mode 100644
index 0000000..746693d
--- /dev/null
+++ b/misc-host/ELF/build-ELF-loader-test-Clang-Debug/.gitignore
@@ -0,0 +1,2 @@
+/ELF-loader-test
+*.bin
diff --git a/misc-host/ELF/build-ELF-loader-test-Clang-Debug/Makefile b/misc-host/ELF/build-ELF-loader-test-Clang-Debug/Makefile
new file mode 100644
index 0000000..7edeff9
--- /dev/null
+++ b/misc-host/ELF/build-ELF-loader-test-Clang-Debug/Makefile
@@ -0,0 +1,590 @@
+#############################################################################
+# Makefile for building: ELF-loader-test
+# Generated by qmake (3.0) (Qt 5.5.0)
+# Project: ../ELF-loader-test/ELF-loader-test.pro
+# Template: app
+# Command: /usr/lib/qt/bin/qmake -spec linux-clang CONFIG+=debug -o Makefile ../ELF-loader-test/ELF-loader-test.pro
+#############################################################################
+
+MAKEFILE = Makefile
+
+####### Compiler, tools and options
+
+CC = clang
+CXX = clang++
+DEFINES =
+CFLAGS = -pipe -g -Wall -W -fPIC $(DEFINES)
+CXXFLAGS = -pipe -g -Wall -W -fPIC $(DEFINES)
+INCPATH = -I../ELF-loader-test -I. -I/usr/lib/qt/mkspecs/linux-clang
+QMAKE = /usr/lib/qt/bin/qmake
+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 = cp -f -R
+DEL_FILE = rm -f
+SYMLINK = ln -f -s
+DEL_DIR = rmdir
+MOVE = mv -f
+TAR = tar -cf
+COMPRESS = gzip -9f
+DISTNAME = ELF-loader-test1.0.0
+DISTDIR = /home/ornitorrincos/OS-github/misc-host/ELF/build-ELF-loader-test-Clang-Debug/.tmp/ELF-loader-test1.0.0
+LINK = clang++
+LFLAGS = -ccc-gcc-name g++
+LIBS = $(SUBLIBS)
+AR = ar cqs
+RANLIB =
+SED = sed
+STRIP = strip
+
+####### Output directory
+
+OBJECTS_DIR = ./
+
+####### Files
+
+SOURCES = ../ELF-loader-test/elfinfoprint.cpp \
+ ../ELF-loader-test/main.cpp \
+ ../ELF-loader-test/bootloader_compat.cpp
+OBJECTS = elfinfoprint.o \
+ main.o \
+ bootloader_compat.o
+DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
+ /usr/lib/qt/mkspecs/common/unix.conf \
+ /usr/lib/qt/mkspecs/common/linux.conf \
+ /usr/lib/qt/mkspecs/common/sanitize.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
+ /usr/lib/qt/mkspecs/common/clang.conf \
+ /usr/lib/qt/mkspecs/qconfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Attica.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KActivities.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KArchive.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KAuth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCMUtils.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCodecs.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCompletion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCrash.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDeclarative.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KI18n.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemModels.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemViews.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNewStuff.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifications.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNTLM.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KParts.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPlotting.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPty.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KService.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextEditor.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWallet.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KXmlGui.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_eglfs_device_lib_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_location.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location_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_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_uiplugin.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_webchannel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.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_x11extras.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_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/modules/qt_phonon4qt5.pri \
+ /usr/lib/qt/mkspecs/modules/qt_QuickAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Solid.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri \
+ /usr/lib/qt/mkspecs/modules/qt_ThreadWeaver.pri \
+ /usr/lib/qt/mkspecs/features/qt_functions.prf \
+ /usr/lib/qt/mkspecs/features/qt_config.prf \
+ /usr/lib/qt/mkspecs/linux-clang/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 \
+ ../ELF-loader-test/deployment.pri \
+ /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 \
+ ../ELF-loader-test/ELF-loader-test.pro datatypes.h \
+ elf64header.h \
+ elfinfoprint.h \
+ bootloader_compat.h ../ELF-loader-test/elfinfoprint.cpp \
+ ../ELF-loader-test/main.cpp \
+ ../ELF-loader-test/bootloader_compat.cpp
+QMAKE_TARGET = ELF-loader-test
+DESTDIR = #avoid trailing-slash linebreak
+TARGET = ELF-loader-test
+
+
+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
+
+$(TARGET): $(OBJECTS)
+ $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
+
+Makefile: ../ELF-loader-test/ELF-loader-test.pro /usr/lib/qt/mkspecs/linux-clang/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
+ /usr/lib/qt/mkspecs/common/unix.conf \
+ /usr/lib/qt/mkspecs/common/linux.conf \
+ /usr/lib/qt/mkspecs/common/sanitize.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base.conf \
+ /usr/lib/qt/mkspecs/common/gcc-base-unix.conf \
+ /usr/lib/qt/mkspecs/common/clang.conf \
+ /usr/lib/qt/mkspecs/qconfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Attica.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KActivities.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KArchive.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KAuth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCMUtils.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCodecs.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCompletion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCrash.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDeclarative.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KI18n.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemModels.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemViews.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNewStuff.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifications.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNTLM.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KParts.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPlotting.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPty.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KService.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextEditor.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWallet.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KXmlGui.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_eglfs_device_lib_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_location.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location_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_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_uiplugin.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_webchannel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.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_x11extras.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_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/modules/qt_phonon4qt5.pri \
+ /usr/lib/qt/mkspecs/modules/qt_QuickAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Solid.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri \
+ /usr/lib/qt/mkspecs/modules/qt_ThreadWeaver.pri \
+ /usr/lib/qt/mkspecs/features/qt_functions.prf \
+ /usr/lib/qt/mkspecs/features/qt_config.prf \
+ /usr/lib/qt/mkspecs/linux-clang/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 \
+ ../ELF-loader-test/deployment.pri \
+ /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 \
+ ../ELF-loader-test/ELF-loader-test.pro
+ $(QMAKE) -spec linux-clang CONFIG+=debug -o Makefile ../ELF-loader-test/ELF-loader-test.pro
+/usr/lib/qt/mkspecs/features/spec_pre.prf:
+/usr/lib/qt/mkspecs/common/unix.conf:
+/usr/lib/qt/mkspecs/common/linux.conf:
+/usr/lib/qt/mkspecs/common/sanitize.conf:
+/usr/lib/qt/mkspecs/common/gcc-base.conf:
+/usr/lib/qt/mkspecs/common/gcc-base-unix.conf:
+/usr/lib/qt/mkspecs/common/clang.conf:
+/usr/lib/qt/mkspecs/qconfig.pri:
+/usr/lib/qt/mkspecs/modules/qt_Attica.pri:
+/usr/lib/qt/mkspecs/modules/qt_KActivities.pri:
+/usr/lib/qt/mkspecs/modules/qt_KArchive.pri:
+/usr/lib/qt/mkspecs/modules/qt_KAuth.pri:
+/usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCMUtils.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCodecs.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCompletion.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCrash.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDeclarative.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri:
+/usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri:
+/usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KI18n.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KItemModels.pri:
+/usr/lib/qt/mkspecs/modules/qt_KItemViews.pri:
+/usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNewStuff.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNotifications.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNTLM.pri:
+/usr/lib/qt/mkspecs/modules/qt_KParts.pri:
+/usr/lib/qt/mkspecs/modules/qt_KPlotting.pri:
+/usr/lib/qt/mkspecs/modules/qt_KPty.pri:
+/usr/lib/qt/mkspecs/modules/qt_KService.pri:
+/usr/lib/qt/mkspecs/modules/qt_KTextEditor.pri:
+/usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWallet.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri:
+/usr/lib/qt/mkspecs/modules/qt_KXmlGui.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_eglfs_device_lib_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_location.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_location_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_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_uiplugin.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_webchannel.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.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_x11extras.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_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/modules/qt_phonon4qt5.pri:
+/usr/lib/qt/mkspecs/modules/qt_QuickAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_Solid.pri:
+/usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri:
+/usr/lib/qt/mkspecs/modules/qt_ThreadWeaver.pri:
+/usr/lib/qt/mkspecs/features/qt_functions.prf:
+/usr/lib/qt/mkspecs/features/qt_config.prf:
+/usr/lib/qt/mkspecs/linux-clang/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:
+../ELF-loader-test/deployment.pri:
+/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:
+../ELF-loader-test/ELF-loader-test.pro:
+qmake: FORCE
+ @$(QMAKE) -spec linux-clang CONFIG+=debug -o Makefile ../ELF-loader-test/ELF-loader-test.pro
+
+qmake_all: FORCE
+
+
+all: Makefile $(TARGET)
+
+dist: distdir FORCE
+ (cd `dirname $(DISTDIR)` && $(TAR) $(DISTNAME).tar $(DISTNAME) && $(COMPRESS) $(DISTNAME).tar) && $(MOVE) `dirname $(DISTDIR)`/$(DISTNAME).tar.gz . && $(DEL_FILE) -r $(DISTDIR)
+
+distdir: FORCE
+ @test -d $(DISTDIR) || mkdir -p $(DISTDIR)
+ $(COPY_FILE) --parents $(DIST) $(DISTDIR)/
+
+
+clean: compiler_clean
+ -$(DEL_FILE) $(OBJECTS)
+ -$(DEL_FILE) *~ core *.core
+
+
+distclean: clean
+ -$(DEL_FILE) $(TARGET)
+ -$(DEL_FILE) Makefile
+
+
+####### Sub-libraries
+
+check: first
+
+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
+
+elfinfoprint.o: ../ELF-loader-test/elfinfoprint.cpp ../ELF-loader-test/elfinfoprint.h \
+ ../ELF-loader-test/elf64header.h \
+ ../ELF-loader-test/datatypes.h \
+ ../ELF-loader-test/bootloader_compat.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o elfinfoprint.o ../ELF-loader-test/elfinfoprint.cpp
+
+main.o: ../ELF-loader-test/main.cpp ../ELF-loader-test/bootloader_compat.h \
+ ../ELF-loader-test/elfinfoprint.h \
+ ../ELF-loader-test/elf64header.h \
+ ../ELF-loader-test/datatypes.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o main.o ../ELF-loader-test/main.cpp
+
+bootloader_compat.o: ../ELF-loader-test/bootloader_compat.cpp ../ELF-loader-test/bootloader_compat.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o bootloader_compat.o ../ELF-loader-test/bootloader_compat.cpp
+
+####### Install
+
+install_target: first FORCE
+ @test -d $(INSTALL_ROOT)/opt/ELF-loader-test/bin || mkdir -p $(INSTALL_ROOT)/opt/ELF-loader-test/bin
+ -$(INSTALL_PROGRAM) $(QMAKE_TARGET) $(INSTALL_ROOT)/opt/ELF-loader-test/bin/$(QMAKE_TARGET)
+
+uninstall_target: FORCE
+ -$(DEL_FILE) $(INSTALL_ROOT)/opt/ELF-loader-test/bin/$(QMAKE_TARGET)
+ -$(DEL_DIR) $(INSTALL_ROOT)/opt/ELF-loader-test/bin/
+
+
+install: install_target FORCE
+
+uninstall: uninstall_target FORCE
+
+FORCE:
+
diff --git a/misc-host/ELF/build-ELF-loader-test-GCC-Debug/Makefile b/misc-host/ELF/build-ELF-loader-test-GCC-Debug/Makefile
new file mode 100644
index 0000000..91c7b80
--- /dev/null
+++ b/misc-host/ELF/build-ELF-loader-test-GCC-Debug/Makefile
@@ -0,0 +1,593 @@
+#############################################################################
+# Makefile for building: ELF-loader-test
+# Generated by qmake (3.0) (Qt 5.5.0)
+# Project: ../ELF-loader-test/ELF-loader-test.pro
+# Template: app
+# Command: /usr/lib/qt/bin/qmake -spec linux-g++ CONFIG+=debug -o Makefile ../ELF-loader-test/ELF-loader-test.pro
+#############################################################################
+
+MAKEFILE = Makefile
+
+####### Compiler, tools and options
+
+CC = gcc
+CXX = g++
+DEFINES =
+CFLAGS = -pipe -g -Wall -W -fPIC $(DEFINES)
+CXXFLAGS = -pipe -g -Wall -W -fPIC $(DEFINES)
+INCPATH = -I../ELF-loader-test -I. -I/usr/lib/qt/mkspecs/linux-g++
+QMAKE = /usr/lib/qt/bin/qmake
+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 = cp -f -R
+DEL_FILE = rm -f
+SYMLINK = ln -f -s
+DEL_DIR = rmdir
+MOVE = mv -f
+TAR = tar -cf
+COMPRESS = gzip -9f
+DISTNAME = ELF-loader-test1.0.0
+DISTDIR = /home/ornitorrincos/OS-github/misc-host/ELF/build-ELF-loader-test-GCC-Debug/.tmp/ELF-loader-test1.0.0
+LINK = g++
+LFLAGS =
+LIBS = $(SUBLIBS)
+AR = ar cqs
+RANLIB =
+SED = sed
+STRIP = strip
+
+####### Output directory
+
+OBJECTS_DIR = ./
+
+####### Files
+
+SOURCES = ../ELF-loader-test/elfinfoprint.cpp \
+ ../ELF-loader-test/main.cpp \
+ ../ELF-loader-test/bootloader_compat.cpp
+OBJECTS = elfinfoprint.o \
+ main.o \
+ bootloader_compat.o
+DIST = /usr/lib/qt/mkspecs/features/spec_pre.prf \
+ /usr/lib/qt/mkspecs/common/unix.conf \
+ /usr/lib/qt/mkspecs/common/linux.conf \
+ /usr/lib/qt/mkspecs/common/sanitize.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_Attica.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KActivities.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KArchive.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KAuth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCMUtils.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCodecs.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCompletion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCrash.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDeclarative.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KI18n.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemModels.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemViews.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNewStuff.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifications.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNTLM.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KParts.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPlotting.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPty.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KService.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextEditor.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWallet.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KXmlGui.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_eglfs_device_lib_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_location.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location_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_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_uiplugin.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_webchannel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.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_x11extras.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_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/modules/qt_phonon4qt5.pri \
+ /usr/lib/qt/mkspecs/modules/qt_QuickAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Solid.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri \
+ /usr/lib/qt/mkspecs/modules/qt_ThreadWeaver.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 \
+ ../ELF-loader-test/deployment.pri \
+ /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 \
+ ../ELF-loader-test/ELF-loader-test.pro datatypes.h \
+ elf64header.h \
+ elfinfoprint.h \
+ bootloader_compat.h ../ELF-loader-test/elfinfoprint.cpp \
+ ../ELF-loader-test/main.cpp \
+ ../ELF-loader-test/bootloader_compat.cpp
+QMAKE_TARGET = ELF-loader-test
+DESTDIR = #avoid trailing-slash linebreak
+TARGET = ELF-loader-test
+
+
+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
+
+$(TARGET): $(OBJECTS)
+ $(LINK) $(LFLAGS) -o $(TARGET) $(OBJECTS) $(OBJCOMP) $(LIBS)
+
+Makefile: ../ELF-loader-test/ELF-loader-test.pro /usr/lib/qt/mkspecs/linux-g++/qmake.conf /usr/lib/qt/mkspecs/features/spec_pre.prf \
+ /usr/lib/qt/mkspecs/common/unix.conf \
+ /usr/lib/qt/mkspecs/common/linux.conf \
+ /usr/lib/qt/mkspecs/common/sanitize.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_Attica.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KActivities.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KArchive.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KAuth.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCMUtils.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCodecs.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCompletion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KCrash.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDeclarative.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KI18n.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemModels.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KItemViews.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNewStuff.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifications.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KNTLM.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KParts.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPlotting.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KPty.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KService.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextEditor.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWallet.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri \
+ /usr/lib/qt/mkspecs/modules/qt_KXmlGui.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_eglfs_device_lib_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_location.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_location_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_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_uiplugin.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_webchannel.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.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_x11extras.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri \
+ /usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_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/modules/qt_phonon4qt5.pri \
+ /usr/lib/qt/mkspecs/modules/qt_QuickAddons.pri \
+ /usr/lib/qt/mkspecs/modules/qt_Solid.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri \
+ /usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri \
+ /usr/lib/qt/mkspecs/modules/qt_ThreadWeaver.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 \
+ ../ELF-loader-test/deployment.pri \
+ /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 \
+ ../ELF-loader-test/ELF-loader-test.pro
+ $(QMAKE) -spec linux-g++ CONFIG+=debug -o Makefile ../ELF-loader-test/ELF-loader-test.pro
+/usr/lib/qt/mkspecs/features/spec_pre.prf:
+/usr/lib/qt/mkspecs/common/unix.conf:
+/usr/lib/qt/mkspecs/common/linux.conf:
+/usr/lib/qt/mkspecs/common/sanitize.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_Attica.pri:
+/usr/lib/qt/mkspecs/modules/qt_KActivities.pri:
+/usr/lib/qt/mkspecs/modules/qt_KArchive.pri:
+/usr/lib/qt/mkspecs/modules/qt_KAuth.pri:
+/usr/lib/qt/mkspecs/modules/qt_KBookmarks.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCMUtils.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCodecs.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCompletion.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigGui.pri:
+/usr/lib/qt/mkspecs/modules/qt_KConfigWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCoreAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KCrash.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDBusAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDeclarative.pri:
+/usr/lib/qt/mkspecs/modules/qt_KDEWebKit.pri:
+/usr/lib/qt/mkspecs/modules/qt_KEmoticons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KGlobalAccel.pri:
+/usr/lib/qt/mkspecs/modules/qt_KGuiAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KI18n.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIconThemes.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOFileWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KIOWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KItemModels.pri:
+/usr/lib/qt/mkspecs/modules/qt_KItemViews.pri:
+/usr/lib/qt/mkspecs/modules/qt_KJobWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNewStuff.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNotifications.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNotifyConfig.pri:
+/usr/lib/qt/mkspecs/modules/qt_KNTLM.pri:
+/usr/lib/qt/mkspecs/modules/qt_KParts.pri:
+/usr/lib/qt/mkspecs/modules/qt_KPlotting.pri:
+/usr/lib/qt/mkspecs/modules/qt_KPty.pri:
+/usr/lib/qt/mkspecs/modules/qt_KService.pri:
+/usr/lib/qt/mkspecs/modules/qt_KTextEditor.pri:
+/usr/lib/qt/mkspecs/modules/qt_KTextWidgets.pri:
+/usr/lib/qt/mkspecs/modules/qt_KUnitConversion.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWallet.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWidgetsAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_KWindowSystem.pri:
+/usr/lib/qt/mkspecs/modules/qt_KXmlGui.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_eglfs_device_lib_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_location.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_location_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_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_uiplugin.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_webchannel.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_webchannel_private.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_x11extras.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_x11extras_private.pri:
+/usr/lib/qt/mkspecs/modules/qt_lib_xcb_qpa_lib_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/modules/qt_phonon4qt5.pri:
+/usr/lib/qt/mkspecs/modules/qt_QuickAddons.pri:
+/usr/lib/qt/mkspecs/modules/qt_Solid.pri:
+/usr/lib/qt/mkspecs/modules/qt_SonnetCore.pri:
+/usr/lib/qt/mkspecs/modules/qt_SonnetUi.pri:
+/usr/lib/qt/mkspecs/modules/qt_ThreadWeaver.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:
+../ELF-loader-test/deployment.pri:
+/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:
+../ELF-loader-test/ELF-loader-test.pro:
+qmake: FORCE
+ @$(QMAKE) -spec linux-g++ CONFIG+=debug -o Makefile ../ELF-loader-test/ELF-loader-test.pro
+
+qmake_all: FORCE
+
+
+all: Makefile $(TARGET)
+
+dist: distdir FORCE
+ (cd `dirname $(DISTDIR)` && $(TAR) $(DISTNAME).tar $(DISTNAME) && $(COMPRESS) $(DISTNAME).tar) && $(MOVE) `dirname $(DISTDIR)`/$(DISTNAME).tar.gz . && $(DEL_FILE) -r $(DISTDIR)
+
+distdir: FORCE
+ @test -d $(DISTDIR) || mkdir -p $(DISTDIR)
+ $(COPY_FILE) --parents $(DIST) $(DISTDIR)/
+
+
+clean: compiler_clean
+ -$(DEL_FILE) $(OBJECTS)
+ -$(DEL_FILE) *~ core *.core
+
+
+distclean: clean
+ -$(DEL_FILE) $(TARGET)
+ -$(DEL_FILE) Makefile
+
+
+####### Sub-libraries
+
+check: first
+
+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
+
+elfinfoprint.o: ../ELF-loader-test/elfinfoprint.cpp ../ELF-loader-test/elfinfoprint.h \
+ ../ELF-loader-test/elf64header.h \
+ ../ELF-loader-test/datatypes.h \
+ ../ELF-loader-test/bootloader_compat.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o elfinfoprint.o ../ELF-loader-test/elfinfoprint.cpp
+
+main.o: ../ELF-loader-test/main.cpp ../ELF-loader-test/bootloader_compat.h \
+ ../ELF-loader-test/elfinfoprint.h \
+ ../ELF-loader-test/elf64header.h \
+ ../ELF-loader-test/datatypes.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o main.o ../ELF-loader-test/main.cpp
+
+bootloader_compat.o: ../ELF-loader-test/bootloader_compat.cpp ../ELF-loader-test/bootloader_compat.h
+ $(CXX) -c $(CXXFLAGS) $(INCPATH) -o bootloader_compat.o ../ELF-loader-test/bootloader_compat.cpp
+
+####### Install
+
+install_target: first FORCE
+ @test -d $(INSTALL_ROOT)/opt/ELF-loader-test/bin || mkdir -p $(INSTALL_ROOT)/opt/ELF-loader-test/bin
+ -$(INSTALL_PROGRAM) $(QMAKE_TARGET) $(INSTALL_ROOT)/opt/ELF-loader-test/bin/$(QMAKE_TARGET)
+
+uninstall_target: FORCE
+ -$(DEL_FILE) $(INSTALL_ROOT)/opt/ELF-loader-test/bin/$(QMAKE_TARGET)
+ -$(DEL_DIR) $(INSTALL_ROOT)/opt/ELF-loader-test/bin/
+
+
+install: install_target FORCE
+
+uninstall: uninstall_target FORCE
+
+FORCE:
+