diff --git a/.devtoolset-11-gcc.metadata b/.devtoolset-11-gcc.metadata
new file mode 100644
index 0000000..e1aafa1
--- /dev/null
+++ b/.devtoolset-11-gcc.metadata
@@ -0,0 +1,8 @@
+7f4348418dc3efefd357b32a2b5c8010211ab284 SOURCES/doxygen-1.8.0.src.tar.gz
+8bb88a8a2cc72b6e4563e0e5e19f53ff09d72ee1 SOURCES/gcc-11.2.1-20210728.tar.xz
+db38c7b67f8eea9f2e5b8a48d219165b2fdab11f SOURCES/gmp-6.1.0.tar.bz2
+bbffc5a2b05e4f0c97e882f96c448504491dc4ed SOURCES/isl-0.18.tar.bz2
+b8be66396c726fdc36ebb0f692ed8a8cca3bcc66 SOURCES/mpc-1.0.3.tar.gz
+e3b0af77f18505184410d621fe0aae179e229dba SOURCES/mpfr-3.1.4.tar.bz2
+6ec33952e824e837fef0e829c93d39d6a507082f SOURCES/newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz
+0e0c6f8d68ab0878f02287ac082c1077c831cd81 SOURCES/nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..e8281b4
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,8 @@
+SOURCES/doxygen-1.8.0.src.tar.gz
+SOURCES/gcc-11.2.1-20210728.tar.xz
+SOURCES/gmp-6.1.0.tar.bz2
+SOURCES/isl-0.18.tar.bz2
+SOURCES/mpc-1.0.3.tar.gz
+SOURCES/mpfr-3.1.4.tar.bz2
+SOURCES/newlib-cygwin-50e2a63b04bdd018484605fbb954fd1bd5147fa0.tar.xz
+SOURCES/nvptx-tools-5f6f343a302d620b0868edab376c00b15741e39e.tar.xz
diff --git a/SOURCES/doxygen-1.7.1-config.patch b/SOURCES/doxygen-1.7.1-config.patch
new file mode 100644
index 0000000..f6be5b9
--- /dev/null
+++ b/SOURCES/doxygen-1.7.1-config.patch
@@ -0,0 +1,95 @@
+diff -up doxygen-1.7.1/addon/doxywizard/Makefile.in.config doxygen-1.7.1/addon/doxywizard/Makefile.in
+--- doxygen-1.7.1/addon/doxywizard/Makefile.in.config 2010-05-23 16:51:31.000000000 +0200
++++ doxygen-1.7.1/addon/doxywizard/Makefile.in 2010-07-19 13:38:33.000000000 +0200
+@@ -10,8 +10,6 @@
+ # See the GNU General Public License for more details.
+ #
+
+-QMAKE=qmake $(MKSPECS)
+-
+ all: Makefile.doxywizard
+ $(MAKE) -f Makefile.doxywizard
+
+@@ -29,11 +27,11 @@ distclean: Makefile.doxywizard
+ $(RM) Makefile.doxywizard
+
+ install:
+- $(INSTTOOL) -d $(INSTALL)/bin
+- $(INSTTOOL) -m 755 ../../bin/doxywizard $(INSTALL)/bin
+- $(INSTTOOL) -d $(INSTALL)/$(MAN1DIR)
++ $(INSTTOOL) -d $(DESTDIR)$(INSTALL)/bin
++ $(INSTTOOL) -m 755 ../../bin/doxywizard $(DESTDIR)$(INSTALL)/bin
++ $(INSTTOOL) -d $(DESTDIR)$(INSTALL)/$(MAN1DIR)
+ cat ../../doc/doxywizard.1 | sed -e "s/DATE/$(DATE)/g" -e "s/VERSION/$(VERSION)/g" > doxywizard.1
+- $(INSTTOOL) -m 644 doxywizard.1 $(INSTALL)/$(MAN1DIR)/doxywizard.1
++ $(INSTTOOL) -m 644 doxywizard.1 $(DESTDIR)$(INSTALL)/$(MAN1DIR)/doxywizard.1
+ rm doxywizard.1
+
+ FORCE:
+diff -up doxygen-1.7.1/configure.config doxygen-1.7.1/configure
+--- doxygen-1.7.1/configure.config 2010-06-25 11:46:38.000000000 +0200
++++ doxygen-1.7.1/configure 2010-07-19 12:03:53.000000000 +0200
+@@ -268,9 +268,10 @@ if test "$f_wizard" = YES; then
+ if test -z "$QTDIR"; then
+ echo " QTDIR environment variable not set!"
+ echo -n " Checking for Qt..."
+- for d in /usr/{lib,share,qt}/{qt-4,qt4,qt,qt*,4} /usr; do
++ for d in /usr/{lib64,lib,share,qt}/{qt-4,qt4,qt,qt*,4} /usr; do
+ if test -x "$d/bin/qmake"; then
+ QTDIR=$d
++ QMAKE=$d/bin/qmake
+ fi
+ done
+ else
+@@ -485,6 +486,8 @@ INSTTOOL = $f_insttool
+ DOXYDOCS = ..
+ DOCDIR = $f_docdir
+ QTDIR = $QTDIR
++QMAKE = $QMAKE
++MAN1DIR = share/man/man1
+ EOF
+
+ if test "$f_dot" != NO; then
+diff -up doxygen-1.7.1/Makefile.in.config doxygen-1.7.1/Makefile.in
+--- doxygen-1.7.1/Makefile.in.config 2009-08-20 21:41:13.000000000 +0200
++++ doxygen-1.7.1/Makefile.in 2010-07-19 12:03:53.000000000 +0200
+@@ -44,8 +44,6 @@ distclean: clean
+
+ DATE=$(shell date "+%B %Y")
+
+-MAN1DIR = man/man1
+-
+ install: doxywizard_install
+ $(INSTTOOL) -d $(DESTDIR)/$(INSTALL)/bin
+ $(INSTTOOL) -m 755 bin/doxygen $(DESTDIR)/$(INSTALL)/bin
+diff -up doxygen-1.7.1/tmake/lib/linux-g++/tmake.conf.config doxygen-1.7.1/tmake/lib/linux-g++/tmake.conf
+--- doxygen-1.7.1/tmake/lib/linux-g++/tmake.conf.config 2008-12-06 14:16:20.000000000 +0100
++++ doxygen-1.7.1/tmake/lib/linux-g++/tmake.conf 2010-07-19 12:03:53.000000000 +0200
+@@ -11,7 +11,7 @@ TMAKE_CC = gcc
+ TMAKE_CFLAGS = -pipe
+ TMAKE_CFLAGS_WARN_ON = -Wall -W -fno-exceptions
+ TMAKE_CFLAGS_WARN_OFF =
+-TMAKE_CFLAGS_RELEASE = -O2
++TMAKE_CFLAGS_RELEASE = $(RPM_OPT_FLAGS)
+ TMAKE_CFLAGS_DEBUG = -g
+ TMAKE_CFLAGS_SHLIB = -fPIC
+ TMAKE_CFLAGS_YACC = -Wno-unused -Wno-parentheses
+@@ -27,12 +27,12 @@ TMAKE_CXXFLAGS_YACC = $$TMAKE_CFLAGS_YAC
+
+ TMAKE_INCDIR =
+ TMAKE_LIBDIR =
+-TMAKE_INCDIR_X11 = /usr/X11R6/include
+-TMAKE_LIBDIR_X11 = /usr/X11R6/lib
+-TMAKE_INCDIR_QT = $(QTDIR)/include
+-TMAKE_LIBDIR_QT = $(QTDIR)/lib
+-TMAKE_INCDIR_OPENGL = /usr/X11R6/include
+-TMAKE_LIBDIR_OPENGL = /usr/X11R6/lib
++TMAKE_INCDIR_X11 =
++TMAKE_LIBDIR_X11 =
++TMAKE_INCDIR_QT =
++TMAKE_LIBDIR_QT =
++TMAKE_INCDIR_OPENGL =
++TMAKE_LIBDIR_OPENGL =
+
+ TMAKE_LINK = g++
+ TMAKE_LINK_SHLIB = g++
diff --git a/SOURCES/doxygen-1.7.5-timestamp.patch b/SOURCES/doxygen-1.7.5-timestamp.patch
new file mode 100644
index 0000000..efbd992
--- /dev/null
+++ b/SOURCES/doxygen-1.7.5-timestamp.patch
@@ -0,0 +1,63 @@
+diff -up doxygen-1.7.5/src/configoptions.cpp.timestamp doxygen-1.7.5/src/configoptions.cpp
+--- doxygen-1.7.5/src/configoptions.cpp.timestamp 2011-08-03 15:54:50.000000000 +0200
++++ doxygen-1.7.5/src/configoptions.cpp 2011-08-23 12:55:56.000000000 +0200
+@@ -1173,6 +1173,14 @@ void addConfigOptions(Config *cfg)
+ cs->setWidgetType(ConfigString::File);
+ cs->addDependency("GENERATE_HTML");
+ //----
++ cb = cfg->addBool(
++ "HTML_TIMESTAMP",
++ "If the HTML_TIMESTAMP tag is set to YES then the generated HTML\n"
++ "documentation will contain the timesstamp.",
++ FALSE
++ );
++ cb->addDependency("GENERATE_HTML");
++ //----
+ cs = cfg->addString(
+ "HTML_STYLESHEET",
+ "The HTML_STYLESHEET tag can be used to specify a user-defined cascading\n"
+diff -up doxygen-1.7.5/src/config.xml.timestamp doxygen-1.7.5/src/config.xml
+--- doxygen-1.7.5/src/config.xml.timestamp 2011-08-03 15:54:48.000000000 +0200
++++ doxygen-1.7.5/src/config.xml 2011-08-23 12:55:56.000000000 +0200
+@@ -819,6 +819,11 @@ The HTML_FOOTER tag can be used to speci
+ each generated HTML page. If it is left blank doxygen will generate a
+ standard footer.
+ ' defval='' depends='GENERATE_HTML'/>
++
++
+