diff options
author | Michele Calgaro <[email protected]> | 2024-05-06 18:26:24 +0900 |
---|---|---|
committer | Michele Calgaro <[email protected]> | 2024-05-06 22:36:50 +0900 |
commit | ac3f0014232619edc41865f6e42e6510bdd8acc6 (patch) | |
tree | 9f851f02238781fb9ffe7f76ac446d25e9c92668 /src/devices/pic | |
parent | 1c22ae157c39e2c1434e5ec43a05eda78dc86798 (diff) | |
download | piklab-ac3f0014232619edc41865f6e42e6510bdd8acc6.tar.gz piklab-ac3f0014232619edc41865f6e42e6510bdd8acc6.zip |
Allow generation of build time data files in out-of-source builds. Also fix generation of data file for devices/mem24 subfolder
Signed-off-by: Michele Calgaro <[email protected]>
Diffstat (limited to 'src/devices/pic')
-rw-r--r-- | src/devices/pic/xml/pic_xml_to_data.cpp | 13 | ||||
-rw-r--r-- | src/devices/pic/xml_data/Makefile.am | 6 |
2 files changed, 14 insertions, 5 deletions
diff --git a/src/devices/pic/xml/pic_xml_to_data.cpp b/src/devices/pic/xml/pic_xml_to_data.cpp index 7cb573e..2419b46 100644 --- a/src/devices/pic/xml/pic_xml_to_data.cpp +++ b/src/devices/pic/xml/pic_xml_to_data.cpp @@ -6,6 +6,7 @@ * the Free Software Foundation; either version 2 of the License, or * * (at your option) any later version. * ***************************************************************************/ +#include <tqdir.h> #include <tqfile.h> #include <tqregexp.h> @@ -18,6 +19,9 @@ namespace Pic { class XmlToData : public Device::XmlToData<Data> { +public: + XmlToData(const TQString &folder) : Device::XmlToData<Data>(folder) {} + private: virtual TQString namespaceName() const { return "Pic"; } @@ -673,8 +677,13 @@ void processRegistersFile(const TQString &filename, TQStringList &devices) void processRegisters() { TQStringList devices; - processRegistersFile("registers/registers.xml", devices); - processRegistersFile("registers/registers_missing.xml", devices); + TQDir xmlFilesDir; + if (!xmlFolder.isEmpty()) + { + xmlFilesDir.setPath(xmlFolder + "/registers"); + } + processRegistersFile(xmlFilesDir.absFilePath("registers.xml"), devices); + processRegistersFile(xmlFilesDir.absFilePath("registers_missing.xml"), devices); // check if we miss any register description TQMap<TQString, Device::Data *>::const_iterator it = _map.begin(); diff --git a/src/devices/pic/xml_data/Makefile.am b/src/devices/pic/xml_data/Makefile.am index e5bd5c4..97496a4 100644 --- a/src/devices/pic/xml_data/Makefile.am +++ b/src/devices/pic/xml_data/Makefile.am @@ -3,10 +3,10 @@ METASOURCES = AUTO noinst_LTLIBRARIES = libpicxml.la libpicxml_la_SOURCES = pic_data.cpp -libpicxml_la_DEPENDENCIES = $(srcdir)/pic_data.cpp +libpicxml_la_DEPENDENCIES = pic_data.cpp include deps.mak noinst_DATA += registers/registers.xml registers/registers_missing.xml -$(srcdir)/pic_data.cpp: ../xml/pic_xml_to_data $(noinst_DATA) - cd $(srcdir) && $(abs_builddir)/../xml/pic_xml_to_data +pic_data.cpp: ../xml/pic_xml_to_data $(noinst_DATA) + cd $(abs_builddir) && ./../xml/pic_xml_to_data $(srcdir) CLEANFILES = pic_data.cpp |