diff --git a/programming/language/fortran/component.xml b/programming/language/fortran/component.xml
new file mode 100644
index 0000000000..ec54fcc887
--- /dev/null
+++ b/programming/language/fortran/component.xml
@@ -0,0 +1,3 @@
+
+ programming.language.fortran
+
diff --git a/programming/language/fortran/flang/actions.py b/programming/language/fortran/flang/actions.py
new file mode 100755
index 0000000000..30db7c8092
--- /dev/null
+++ b/programming/language/fortran/flang/actions.py
@@ -0,0 +1,52 @@
+#!/usr/bin/python
+# -*- coding: utf-8 -*-
+#
+# Licensed under the GNU General Public License, version 3.
+# See the file http://www.gnu.org/licenses/gpl.txt
+
+from pisi.actionsapi import pisitools
+from pisi.actionsapi import shelltools
+from pisi.actionsapi import autotools
+from pisi.actionsapi import cmaketools
+from pisi.actionsapi import get
+
+WorkDir = "llvm-project-%s/flang"
+
+NoStrip = ["/usr"]
+
+def setup():
+ shelltools.makedirs("build")
+ shelltools.cd("build")
+
+ if get.buildTYPE() == "emul32":
+ shelltools.export("CC", "clang")
+ shelltools.export("CXX" "clang++")
+ else:
+ shelltools.export("CC", "clang -m32")
+ shelltools.export("CXX" "clang++ -m32")
+
+ pisitools.ldflags.add("-fuse-ld=lld")
+
+ options = "-DBUILD_SHARED_LIBS=ON \
+ -DFLANG_INCLUDE_DOCS=ON \
+ -DLLVM_LINK_LLVM_DYLIB=ON \
+ -DLLVM_EXTERNAL_LIT=../../llvm/utils/lit/lit.py \
+ "
+ if get.buildTYPE() == "emul32":
+ options += "-DLLVM_LIBDIR_SUFFIX=32 \
+ -DCMAKE_INSTALL_PREFIX=/emul32
+ "
+ cmaketools.configure(options)
+
+def build():
+ shelltools.cd("build")
+ autotools.make()
+
+def install():
+ shelltools.cd("build")
+ autotools.rawInstall("DESTDIR=%s" %get.installDIR())
+ if get.buildTYPE() == "emul32" :
+ pisitools.domove("/emul32/lib32/", "/usr/")
+ pisitools.removeDir("/emul32")
+
+ pisitools.dodoc("LICENSE.TXT", "README.md")
diff --git a/programming/language/fortran/flang/files/shared.patch b/programming/language/fortran/flang/files/shared.patch
new file mode 100644
index 0000000000..c8dabf4862
--- /dev/null
+++ b/programming/language/fortran/flang/files/shared.patch
@@ -0,0 +1,12 @@
+diff -Naur flang-11.0.0rc2.src/CMakeLists.txt flang-11.0.0rc2.src.cmake/CMakeLists.txt
+--- flang-11.0.0rc2.src/CMakeLists.txt 2020-08-20 16:24:59.000000000 +0000
++++ flang-11.0.0rc2.src.cmake/CMakeLists.txt 2020-09-03 13:44:24.226776260 +0000
+@@ -199,8 +199,6 @@
+ # Always build tco tool
+ set(LLVM_BUILD_TOOLS ON)
+ message(STATUS "Linking driver with FIR and LLVM")
+- llvm_map_components_to_libnames(LLVM_COMMON_LIBS support)
+- message(STATUS "LLVM libraries: ${LLVM_COMMON_LIBS}")
+ endif()
+
+ # Add Flang-centric modules to cmake path.
diff --git a/programming/language/fortran/flang/files/token-sequence.patch b/programming/language/fortran/flang/files/token-sequence.patch
new file mode 100644
index 0000000000..8f4577e662
--- /dev/null
+++ b/programming/language/fortran/flang/files/token-sequence.patch
@@ -0,0 +1,13 @@
+diff -Naur flang-11.0.0rc2.src.orig/lib/Parser/token-sequence.cpp flang-11.0.0rc2.src/lib/Parser/token-sequence.cpp
+--- flang-11.0.0rc2.src.orig/lib/Parser/token-sequence.cpp 2020-09-03 12:01:15.278223312 +0000
++++ flang-11.0.0rc2.src/lib/Parser/token-sequence.cpp 2020-09-03 12:51:40.082870848 +0000
+@@ -134,7 +134,8 @@
+ std::size_t atToken{0};
+ for (std::size_t j{0}; j < chars;) {
+ std::size_t nextStart{atToken + 1 < tokens ? start_[++atToken] : chars};
+- char *p{&char_[j]}, *limit{&char_[nextStart]};
++ char *p{&char_[j]};
++ char const* limit{char_.data() + nextStart};
+ j = nextStart;
+ if (IsDecimalDigit(*p)) {
+ while (p < limit && IsDecimalDigit(*p)) {
diff --git a/programming/language/fortran/flang/llvm-project-11.0.0.tar.xz b/programming/language/fortran/flang/llvm-project-11.0.0.tar.xz
new file mode 100644
index 0000000000..ab93d39fed
Binary files /dev/null and b/programming/language/fortran/flang/llvm-project-11.0.0.tar.xz differ
diff --git a/programming/language/fortran/flang/pspec.xml b/programming/language/fortran/flang/pspec.xml
new file mode 100755
index 0000000000..c8e3403398
--- /dev/null
+++ b/programming/language/fortran/flang/pspec.xml
@@ -0,0 +1,75 @@
+
+
+
+
+ flang
+ https://llvm.org/
+
+ Idris Kalp
+ idriskalp@gmail.com
+
+ MIT
+ library
+ LLVM Fortran compiler
+ A Fortran language front-end designed for integration with LLVM
+ https://github.com/llvm/llvm-project/releases/download/llvmorg-11.0.0/llvm-project-11.0.0.tar.xz
+
+ llvm
+ llvm-libs
+ llvm-clang
+ lld
+ cmake
+ python3-sphinx
+
+
+ shared.patch
+ token-sequence.patch
+
+
+
+
+ flang
+
+ llvm-libs
+
+
+ /usr/bin
+ /usr/lib
+ /usr/share/doc
+
+
+
+
+ flang-32bit
+ flang 32bit shared libraries.
+ emul32
+ emul32
+
+ llvm-32bit
+
+
+ /usr/lib32
+
+
+
+
+ flang-devel
+ Development files for flang
+
+ flang
+
+
+ /usr/include
+
+
+
+
+
+ 2020-11-12
+ 11.0.0
+ First release
+ Idris Kalp
+ idriskalp@gmail.com
+
+
+