Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 May 2017 02:01:51 +0000 (UTC)
From:      Johannes M Dieterich <jmd@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r441207 - in head/devel: . flang flang-clang flang/files
Message-ID:  <201705190201.v4J21pBo051603@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jmd
Date: Fri May 19 02:01:51 2017
New Revision: 441207
URL: https://svnweb.freebsd.org/changeset/ports/441207

Log:
  new ports: devel/flang and devel/flang-clang.
  
  Welcome the freshly released flang Fortran LLVM compiler (currently only for amd6) ! It needs as a companion a custom clang, added as flang-clang.
  
  Reviewed by:	swills (mentor)
  Approved by:	swills (mentor)
  Differential Revision:	https://reviews.freebsd.org/D10805

Added:
  head/devel/flang/
  head/devel/flang-clang/
  head/devel/flang-clang/Makefile   (contents, props changed)
  head/devel/flang-clang/distinfo   (contents, props changed)
  head/devel/flang-clang/pkg-descr   (contents, props changed)
  head/devel/flang-clang/pkg-plist   (contents, props changed)
  head/devel/flang/Makefile   (contents, props changed)
  head/devel/flang/distinfo   (contents, props changed)
  head/devel/flang/files/
  head/devel/flang/files/flang.in   (contents, props changed)
  head/devel/flang/files/patch-CMakeLists.txt   (contents, props changed)
  head/devel/flang/files/patch-runtime_flang_async.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flang_cdexp.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flang_cexp.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flang_stime3f.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flangrti_dumpregs.h   (contents, props changed)
  head/devel/flang/files/patch-runtime_flangrti_erfc__scaled.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flangrti_erfc__scaledf.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flangrti_iostdinit.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flangrti_trace__lin.c   (contents, props changed)
  head/devel/flang/files/patch-runtime_flangrti_x86__64-Linux_dumpregs.c   (contents, props changed)
  head/devel/flang/pkg-descr   (contents, props changed)
  head/devel/flang/pkg-plist   (contents, props changed)
Modified:
  head/devel/Makefile

Modified: head/devel/Makefile
==============================================================================
--- head/devel/Makefile	Fri May 19 01:34:59 2017	(r441206)
+++ head/devel/Makefile	Fri May 19 02:01:51 2017	(r441207)
@@ -579,6 +579,8 @@
     SUBDIR += fifechan
     SUBDIR += firmware-utils
     SUBDIR += fistgen
+    SUBDIR += flang
+    SUBDIR += flang-clang
     SUBDIR += flatbuffers
     SUBDIR += flatzebra
     SUBDIR += flex-sdk

Added: head/devel/flang-clang/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang-clang/Makefile	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,42 @@
+# Created by: Johannes M Dieterich <jmd@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	flang-clang
+DISTVERSION=	3.9-20170518
+CATEGORIES=	devel lang
+
+MAINTAINER=	jmd@FreeBSD.org
+COMMENT=	Fortran compiler targeting LLVM (modified clang part)
+
+LICENSE=	LLVM
+LICENSE_NAME=	LLVM Release License
+LICENSE_FILE=	${WRKSRC}/LICENSE.TXT
+LICENSE_PERMS=	dist-mirror dist-sell pkg-mirror pkg-sell auto-accept
+
+BUILD_DEPENDS=	llvm39>=0:devel/llvm39 \
+		openmp>=0:devel/openmp
+RUN_DEPENDS=	llvm39>=0:devel/llvm39 \
+		openmp>=0:devel/openmp
+
+USE_LDCONFIG=	${PREFIX}/flang/lib
+USES=		cmake:outsource compiler:c++11-lib libedit ninja tar:xz perl5 \
+		python shebangfix
+
+USE_GNOME+=	libxml2
+
+SHEBANG_FILES=	tools/scan-view/bin/scan-view \
+		tools/clang-format/git-clang-format \
+		tools/clang-format/clang-format-diff.py
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	flang-compiler
+GH_PROJECT=	clang
+GH_TAGNAME=	edf56fd
+
+CMAKE_ARGS+=	-DLLVM_CONFIG=${LOCALBASE}/bin/llvm-config39
+
+CMAKE_INSTALL_PREFIX=	${PREFIX}/flang
+
+post-install:
+	@${GZIP_CMD} ${STAGEDIR}/${PREFIX}/flang/man/man1/scan-build.1
+.include <bsd.port.mk>

Added: head/devel/flang-clang/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang-clang/distinfo	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1495120245
+SHA256 (flang-compiler-clang-3.9-20170518-edf56fd_GH0.tar.gz) = ff5dfcc322ceb247dffe10300a0a6072face2ef458c413e2dd70fb5c8e51beaa
+SIZE (flang-compiler-clang-3.9-20170518-edf56fd_GH0.tar.gz) = 14365634

Added: head/devel/flang-clang/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang-clang/pkg-descr	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,3 @@
+Fortran compiler targeting LLVM (modified clang part)
+
+WWW: https://github.com/flang-compiler/clang

Added: head/devel/flang-clang/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang-clang/pkg-plist	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,605 @@
+flang/bin/c-index-test
+flang/bin/clang
+flang/bin/clang++
+flang/bin/clang-3.9
+flang/bin/clang-check
+flang/bin/clang-cl
+flang/bin/clang-format
+flang/bin/flang
+flang/bin/git-clang-format
+flang/bin/scan-build
+flang/bin/scan-view
+flang/include/clang-c/BuildSystem.h
+flang/include/clang-c/CXCompilationDatabase.h
+flang/include/clang-c/CXErrorCode.h
+flang/include/clang-c/CXString.h
+flang/include/clang-c/Documentation.h
+flang/include/clang-c/Index.h
+flang/include/clang-c/Platform.h
+flang/include/clang/ARCMigrate/ARCMT.h
+flang/include/clang/ARCMigrate/ARCMTActions.h
+flang/include/clang/ARCMigrate/FileRemapper.h
+flang/include/clang/AST/APValue.h
+flang/include/clang/AST/AST.h
+flang/include/clang/AST/ASTConsumer.h
+flang/include/clang/AST/ASTContext.h
+flang/include/clang/AST/ASTDiagnostic.h
+flang/include/clang/AST/ASTFwd.h
+flang/include/clang/AST/ASTImporter.h
+flang/include/clang/AST/ASTLambda.h
+flang/include/clang/AST/ASTMutationListener.h
+flang/include/clang/AST/ASTTypeTraits.h
+flang/include/clang/AST/ASTUnresolvedSet.h
+flang/include/clang/AST/ASTVector.h
+flang/include/clang/AST/Attr.h
+flang/include/clang/AST/AttrDump.inc
+flang/include/clang/AST/AttrImpl.inc
+flang/include/clang/AST/AttrIterator.h
+flang/include/clang/AST/AttrVisitor.inc
+flang/include/clang/AST/Attrs.inc
+flang/include/clang/AST/Availability.h
+flang/include/clang/AST/BaseSubobject.h
+flang/include/clang/AST/BuiltinTypes.def
+flang/include/clang/AST/CXXInheritance.h
+flang/include/clang/AST/CanonicalType.h
+flang/include/clang/AST/CharUnits.h
+flang/include/clang/AST/Comment.h
+flang/include/clang/AST/CommentBriefParser.h
+flang/include/clang/AST/CommentCommandInfo.inc
+flang/include/clang/AST/CommentCommandList.inc
+flang/include/clang/AST/CommentCommandTraits.h
+flang/include/clang/AST/CommentDiagnostic.h
+flang/include/clang/AST/CommentHTMLNamedCharacterReferences.inc
+flang/include/clang/AST/CommentHTMLTags.inc
+flang/include/clang/AST/CommentHTMLTagsProperties.inc
+flang/include/clang/AST/CommentLexer.h
+flang/include/clang/AST/CommentNodes.inc
+flang/include/clang/AST/CommentParser.h
+flang/include/clang/AST/CommentSema.h
+flang/include/clang/AST/CommentVisitor.h
+flang/include/clang/AST/Decl.h
+flang/include/clang/AST/DeclAccessPair.h
+flang/include/clang/AST/DeclBase.h
+flang/include/clang/AST/DeclCXX.h
+flang/include/clang/AST/DeclContextInternals.h
+flang/include/clang/AST/DeclFriend.h
+flang/include/clang/AST/DeclGroup.h
+flang/include/clang/AST/DeclLookups.h
+flang/include/clang/AST/DeclNodes.inc
+flang/include/clang/AST/DeclObjC.h
+flang/include/clang/AST/DeclOpenMP.h
+flang/include/clang/AST/DeclTemplate.h
+flang/include/clang/AST/DeclVisitor.h
+flang/include/clang/AST/DeclarationName.h
+flang/include/clang/AST/DependentDiagnostic.h
+flang/include/clang/AST/EvaluatedExprVisitor.h
+flang/include/clang/AST/Expr.h
+flang/include/clang/AST/ExprCXX.h
+flang/include/clang/AST/ExprObjC.h
+flang/include/clang/AST/ExprOpenMP.h
+flang/include/clang/AST/ExternalASTSource.h
+flang/include/clang/AST/GlobalDecl.h
+flang/include/clang/AST/LambdaCapture.h
+flang/include/clang/AST/LocInfoType.h
+flang/include/clang/AST/Mangle.h
+flang/include/clang/AST/MangleNumberingContext.h
+flang/include/clang/AST/NSAPI.h
+flang/include/clang/AST/NestedNameSpecifier.h
+flang/include/clang/AST/OpenMPClause.h
+flang/include/clang/AST/OperationKinds.def
+flang/include/clang/AST/OperationKinds.h
+flang/include/clang/AST/ParentMap.h
+flang/include/clang/AST/PrettyPrinter.h
+flang/include/clang/AST/RawCommentList.h
+flang/include/clang/AST/RecordLayout.h
+flang/include/clang/AST/RecursiveASTVisitor.h
+flang/include/clang/AST/Redeclarable.h
+flang/include/clang/AST/SelectorLocationsKind.h
+flang/include/clang/AST/Stmt.h
+flang/include/clang/AST/StmtCXX.h
+flang/include/clang/AST/StmtGraphTraits.h
+flang/include/clang/AST/StmtIterator.h
+flang/include/clang/AST/StmtNodes.inc
+flang/include/clang/AST/StmtObjC.h
+flang/include/clang/AST/StmtOpenMP.h
+flang/include/clang/AST/StmtVisitor.h
+flang/include/clang/AST/TemplateBase.h
+flang/include/clang/AST/TemplateName.h
+flang/include/clang/AST/Type.h
+flang/include/clang/AST/TypeLoc.h
+flang/include/clang/AST/TypeLocNodes.def
+flang/include/clang/AST/TypeLocVisitor.h
+flang/include/clang/AST/TypeNodes.def
+flang/include/clang/AST/TypeOrdering.h
+flang/include/clang/AST/TypeVisitor.h
+flang/include/clang/AST/UnresolvedSet.h
+flang/include/clang/AST/VTTBuilder.h
+flang/include/clang/AST/VTableBuilder.h
+flang/include/clang/ASTMatchers/ASTMatchFinder.h
+flang/include/clang/ASTMatchers/ASTMatchers.h
+flang/include/clang/ASTMatchers/ASTMatchersInternal.h
+flang/include/clang/ASTMatchers/ASTMatchersMacros.h
+flang/include/clang/ASTMatchers/Dynamic/Diagnostics.h
+flang/include/clang/ASTMatchers/Dynamic/Parser.h
+flang/include/clang/ASTMatchers/Dynamic/Registry.h
+flang/include/clang/ASTMatchers/Dynamic/VariantValue.h
+flang/include/clang/Analysis/Analyses/CFGReachabilityAnalysis.h
+flang/include/clang/Analysis/Analyses/Consumed.h
+flang/include/clang/Analysis/Analyses/Dominators.h
+flang/include/clang/Analysis/Analyses/FormatString.h
+flang/include/clang/Analysis/Analyses/LiveVariables.h
+flang/include/clang/Analysis/Analyses/PostOrderCFGView.h
+flang/include/clang/Analysis/Analyses/PseudoConstantAnalysis.h
+flang/include/clang/Analysis/Analyses/ReachableCode.h
+flang/include/clang/Analysis/Analyses/ThreadSafety.h
+flang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
+flang/include/clang/Analysis/Analyses/ThreadSafetyLogical.h
+flang/include/clang/Analysis/Analyses/ThreadSafetyOps.def
+flang/include/clang/Analysis/Analyses/ThreadSafetyTIL.h
+flang/include/clang/Analysis/Analyses/ThreadSafetyTraverse.h
+flang/include/clang/Analysis/Analyses/ThreadSafetyUtil.h
+flang/include/clang/Analysis/Analyses/UninitializedValues.h
+flang/include/clang/Analysis/AnalysisContext.h
+flang/include/clang/Analysis/AnalysisDiagnostic.h
+flang/include/clang/Analysis/CFG.h
+flang/include/clang/Analysis/CFGStmtMap.h
+flang/include/clang/Analysis/CallGraph.h
+flang/include/clang/Analysis/CodeInjector.h
+flang/include/clang/Analysis/DomainSpecific/CocoaConventions.h
+flang/include/clang/Analysis/DomainSpecific/ObjCNoReturn.h
+flang/include/clang/Analysis/FlowSensitive/DataflowValues.h
+flang/include/clang/Analysis/ProgramPoint.h
+flang/include/clang/Analysis/Support/BumpVector.h
+flang/include/clang/Basic/ABI.h
+flang/include/clang/Basic/AddressSpaces.h
+flang/include/clang/Basic/AllDiagnostics.h
+flang/include/clang/Basic/AttrHasAttributeImpl.inc
+flang/include/clang/Basic/AttrKinds.h
+flang/include/clang/Basic/AttrList.inc
+flang/include/clang/Basic/Attributes.h
+flang/include/clang/Basic/Builtins.def
+flang/include/clang/Basic/Builtins.h
+flang/include/clang/Basic/BuiltinsAArch64.def
+flang/include/clang/Basic/BuiltinsAMDGPU.def
+flang/include/clang/Basic/BuiltinsARM.def
+flang/include/clang/Basic/BuiltinsHexagon.def
+flang/include/clang/Basic/BuiltinsLe64.def
+flang/include/clang/Basic/BuiltinsMips.def
+flang/include/clang/Basic/BuiltinsNEON.def
+flang/include/clang/Basic/BuiltinsNVPTX.def
+flang/include/clang/Basic/BuiltinsPPC.def
+flang/include/clang/Basic/BuiltinsSystemZ.def
+flang/include/clang/Basic/BuiltinsWebAssembly.def
+flang/include/clang/Basic/BuiltinsX86.def
+flang/include/clang/Basic/BuiltinsXCore.def
+flang/include/clang/Basic/CapturedStmt.h
+flang/include/clang/Basic/CharInfo.h
+flang/include/clang/Basic/CommentOptions.h
+flang/include/clang/Basic/Cuda.h
+flang/include/clang/Basic/DebugInfoOptions.h
+flang/include/clang/Basic/Diagnostic.h
+flang/include/clang/Basic/DiagnosticASTKinds.inc
+flang/include/clang/Basic/DiagnosticAnalysisKinds.inc
+flang/include/clang/Basic/DiagnosticCategories.h
+flang/include/clang/Basic/DiagnosticCommentKinds.inc
+flang/include/clang/Basic/DiagnosticCommonKinds.inc
+flang/include/clang/Basic/DiagnosticDriverKinds.inc
+flang/include/clang/Basic/DiagnosticFrontendKinds.inc
+flang/include/clang/Basic/DiagnosticGroups.inc
+flang/include/clang/Basic/DiagnosticIDs.h
+flang/include/clang/Basic/DiagnosticIndexName.inc
+flang/include/clang/Basic/DiagnosticLexKinds.inc
+flang/include/clang/Basic/DiagnosticOptions.def
+flang/include/clang/Basic/DiagnosticOptions.h
+flang/include/clang/Basic/DiagnosticParseKinds.inc
+flang/include/clang/Basic/DiagnosticSemaKinds.inc
+flang/include/clang/Basic/DiagnosticSerializationKinds.inc
+flang/include/clang/Basic/ExceptionSpecificationType.h
+flang/include/clang/Basic/ExpressionTraits.h
+flang/include/clang/Basic/FileManager.h
+flang/include/clang/Basic/FileSystemOptions.h
+flang/include/clang/Basic/FileSystemStatCache.h
+flang/include/clang/Basic/IdentifierTable.h
+flang/include/clang/Basic/LLVM.h
+flang/include/clang/Basic/Lambda.h
+flang/include/clang/Basic/LangOptions.def
+flang/include/clang/Basic/LangOptions.h
+flang/include/clang/Basic/Linkage.h
+flang/include/clang/Basic/MacroBuilder.h
+flang/include/clang/Basic/Module.h
+flang/include/clang/Basic/ObjCRuntime.h
+flang/include/clang/Basic/OpenCLExtensions.def
+flang/include/clang/Basic/OpenCLImageTypes.def
+flang/include/clang/Basic/OpenCLOptions.h
+flang/include/clang/Basic/OpenMPKinds.def
+flang/include/clang/Basic/OpenMPKinds.h
+flang/include/clang/Basic/OperatorKinds.def
+flang/include/clang/Basic/OperatorKinds.h
+flang/include/clang/Basic/OperatorPrecedence.h
+flang/include/clang/Basic/PartialDiagnostic.h
+flang/include/clang/Basic/PlistSupport.h
+flang/include/clang/Basic/PragmaKinds.h
+flang/include/clang/Basic/PrettyStackTrace.h
+flang/include/clang/Basic/SanitizerBlacklist.h
+flang/include/clang/Basic/Sanitizers.def
+flang/include/clang/Basic/Sanitizers.h
+flang/include/clang/Basic/SourceLocation.h
+flang/include/clang/Basic/SourceManager.h
+flang/include/clang/Basic/SourceManagerInternals.h
+flang/include/clang/Basic/Specifiers.h
+flang/include/clang/Basic/TargetBuiltins.h
+flang/include/clang/Basic/TargetCXXABI.h
+flang/include/clang/Basic/TargetInfo.h
+flang/include/clang/Basic/TargetOptions.h
+flang/include/clang/Basic/TemplateKinds.h
+flang/include/clang/Basic/TokenKinds.def
+flang/include/clang/Basic/TokenKinds.h
+flang/include/clang/Basic/TypeTraits.h
+flang/include/clang/Basic/Version.h
+flang/include/clang/Basic/Version.inc
+flang/include/clang/Basic/VersionTuple.h
+flang/include/clang/Basic/VirtualFileSystem.h
+flang/include/clang/Basic/Visibility.h
+flang/include/clang/Basic/arm_neon.inc
+flang/include/clang/CodeGen/BackendUtil.h
+flang/include/clang/CodeGen/CGFunctionInfo.h
+flang/include/clang/CodeGen/CodeGenABITypes.h
+flang/include/clang/CodeGen/CodeGenAction.h
+flang/include/clang/CodeGen/ModuleBuilder.h
+flang/include/clang/CodeGen/ObjectFilePCHContainerOperations.h
+flang/include/clang/CodeGen/SwiftCallingConv.h
+flang/include/clang/Config/config.h
+flang/include/clang/Driver/Action.h
+flang/include/clang/Driver/Compilation.h
+flang/include/clang/Driver/Driver.h
+flang/include/clang/Driver/DriverDiagnostic.h
+flang/include/clang/Driver/Job.h
+flang/include/clang/Driver/Multilib.h
+flang/include/clang/Driver/Options.h
+flang/include/clang/Driver/Options.inc
+flang/include/clang/Driver/Phases.h
+flang/include/clang/Driver/SanitizerArgs.h
+flang/include/clang/Driver/Tool.h
+flang/include/clang/Driver/ToolChain.h
+flang/include/clang/Driver/Types.def
+flang/include/clang/Driver/Types.h
+flang/include/clang/Driver/Util.h
+flang/include/clang/Edit/Commit.h
+flang/include/clang/Edit/EditedSource.h
+flang/include/clang/Edit/EditsReceiver.h
+flang/include/clang/Edit/FileOffset.h
+flang/include/clang/Edit/Rewriters.h
+flang/include/clang/Format/Format.h
+flang/include/clang/Frontend/ASTConsumers.h
+flang/include/clang/Frontend/ASTUnit.h
+flang/include/clang/Frontend/ChainedDiagnosticConsumer.h
+flang/include/clang/Frontend/CodeGenOptions.def
+flang/include/clang/Frontend/CodeGenOptions.h
+flang/include/clang/Frontend/CommandLineSourceLoc.h
+flang/include/clang/Frontend/CompilerInstance.h
+flang/include/clang/Frontend/CompilerInvocation.h
+flang/include/clang/Frontend/DependencyOutputOptions.h
+flang/include/clang/Frontend/DiagnosticRenderer.h
+flang/include/clang/Frontend/FrontendAction.h
+flang/include/clang/Frontend/FrontendActions.h
+flang/include/clang/Frontend/FrontendDiagnostic.h
+flang/include/clang/Frontend/FrontendOptions.h
+flang/include/clang/Frontend/FrontendPluginRegistry.h
+flang/include/clang/Frontend/LangStandard.h
+flang/include/clang/Frontend/LangStandards.def
+flang/include/clang/Frontend/LayoutOverrideSource.h
+flang/include/clang/Frontend/LogDiagnosticPrinter.h
+flang/include/clang/Frontend/MigratorOptions.h
+flang/include/clang/Frontend/MultiplexConsumer.h
+flang/include/clang/Frontend/PCHContainerOperations.h
+flang/include/clang/Frontend/PreprocessorOutputOptions.h
+flang/include/clang/Frontend/SerializedDiagnosticPrinter.h
+flang/include/clang/Frontend/SerializedDiagnosticReader.h
+flang/include/clang/Frontend/SerializedDiagnostics.h
+flang/include/clang/Frontend/TextDiagnostic.h
+flang/include/clang/Frontend/TextDiagnosticBuffer.h
+flang/include/clang/Frontend/TextDiagnosticPrinter.h
+flang/include/clang/Frontend/Utils.h
+flang/include/clang/Frontend/VerifyDiagnosticConsumer.h
+flang/include/clang/FrontendTool/Utils.h
+flang/include/clang/Index/CodegenNameGenerator.h
+flang/include/clang/Index/CommentToXML.h
+flang/include/clang/Index/IndexDataConsumer.h
+flang/include/clang/Index/IndexSymbol.h
+flang/include/clang/Index/IndexingAction.h
+flang/include/clang/Index/USRGeneration.h
+flang/include/clang/Lex/CodeCompletionHandler.h
+flang/include/clang/Lex/DirectoryLookup.h
+flang/include/clang/Lex/ExternalPreprocessorSource.h
+flang/include/clang/Lex/HeaderMap.h
+flang/include/clang/Lex/HeaderMapTypes.h
+flang/include/clang/Lex/HeaderSearch.h
+flang/include/clang/Lex/HeaderSearchOptions.h
+flang/include/clang/Lex/LexDiagnostic.h
+flang/include/clang/Lex/Lexer.h
+flang/include/clang/Lex/LiteralSupport.h
+flang/include/clang/Lex/MacroArgs.h
+flang/include/clang/Lex/MacroInfo.h
+flang/include/clang/Lex/ModuleLoader.h
+flang/include/clang/Lex/ModuleMap.h
+flang/include/clang/Lex/MultipleIncludeOpt.h
+flang/include/clang/Lex/PPCallbacks.h
+flang/include/clang/Lex/PPConditionalDirectiveRecord.h
+flang/include/clang/Lex/PTHLexer.h
+flang/include/clang/Lex/PTHManager.h
+flang/include/clang/Lex/Pragma.h
+flang/include/clang/Lex/PreprocessingRecord.h
+flang/include/clang/Lex/Preprocessor.h
+flang/include/clang/Lex/PreprocessorLexer.h
+flang/include/clang/Lex/PreprocessorOptions.h
+flang/include/clang/Lex/ScratchBuffer.h
+flang/include/clang/Lex/Token.h
+flang/include/clang/Lex/TokenConcatenation.h
+flang/include/clang/Lex/TokenLexer.h
+flang/include/clang/Parse/AttrParserStringSwitches.inc
+flang/include/clang/Parse/ParseAST.h
+flang/include/clang/Parse/ParseDiagnostic.h
+flang/include/clang/Parse/Parser.h
+flang/include/clang/Rewrite/Core/DeltaTree.h
+flang/include/clang/Rewrite/Core/HTMLRewrite.h
+flang/include/clang/Rewrite/Core/RewriteBuffer.h
+flang/include/clang/Rewrite/Core/RewriteRope.h
+flang/include/clang/Rewrite/Core/Rewriter.h
+flang/include/clang/Rewrite/Core/TokenRewriter.h
+flang/include/clang/Rewrite/Frontend/ASTConsumers.h
+flang/include/clang/Rewrite/Frontend/FixItRewriter.h
+flang/include/clang/Rewrite/Frontend/FrontendActions.h
+flang/include/clang/Rewrite/Frontend/Rewriters.h
+flang/include/clang/Sema/AnalysisBasedWarnings.h
+flang/include/clang/Sema/AttrParsedAttrImpl.inc
+flang/include/clang/Sema/AttrParsedAttrKinds.inc
+flang/include/clang/Sema/AttrParsedAttrList.inc
+flang/include/clang/Sema/AttrSpellingListIndex.inc
+flang/include/clang/Sema/AttrTemplateInstantiate.inc
+flang/include/clang/Sema/AttributeList.h
+flang/include/clang/Sema/CXXFieldCollector.h
+flang/include/clang/Sema/CleanupInfo.h
+flang/include/clang/Sema/CodeCompleteConsumer.h
+flang/include/clang/Sema/CodeCompleteOptions.h
+flang/include/clang/Sema/DeclSpec.h
+flang/include/clang/Sema/DelayedDiagnostic.h
+flang/include/clang/Sema/Designator.h
+flang/include/clang/Sema/ExternalSemaSource.h
+flang/include/clang/Sema/IdentifierResolver.h
+flang/include/clang/Sema/Initialization.h
+flang/include/clang/Sema/Lookup.h
+flang/include/clang/Sema/LoopHint.h
+flang/include/clang/Sema/MultiplexExternalSemaSource.h
+flang/include/clang/Sema/ObjCMethodList.h
+flang/include/clang/Sema/Overload.h
+flang/include/clang/Sema/Ownership.h
+flang/include/clang/Sema/ParsedTemplate.h
+flang/include/clang/Sema/PrettyDeclStackTrace.h
+flang/include/clang/Sema/Scope.h
+flang/include/clang/Sema/ScopeInfo.h
+flang/include/clang/Sema/Sema.h
+flang/include/clang/Sema/SemaConsumer.h
+flang/include/clang/Sema/SemaDiagnostic.h
+flang/include/clang/Sema/SemaFixItUtils.h
+flang/include/clang/Sema/SemaInternal.h
+flang/include/clang/Sema/SemaLambda.h
+flang/include/clang/Sema/Template.h
+flang/include/clang/Sema/TemplateDeduction.h
+flang/include/clang/Sema/TypoCorrection.h
+flang/include/clang/Sema/Weak.h
+flang/include/clang/Serialization/ASTBitCodes.h
+flang/include/clang/Serialization/ASTDeserializationListener.h
+flang/include/clang/Serialization/ASTReader.h
+flang/include/clang/Serialization/ASTWriter.h
+flang/include/clang/Serialization/AttrPCHRead.inc
+flang/include/clang/Serialization/AttrPCHWrite.inc
+flang/include/clang/Serialization/ContinuousRangeMap.h
+flang/include/clang/Serialization/GlobalModuleIndex.h
+flang/include/clang/Serialization/Module.h
+flang/include/clang/Serialization/ModuleFileExtension.h
+flang/include/clang/Serialization/ModuleManager.h
+flang/include/clang/Serialization/SerializationDiagnostic.h
+flang/include/clang/StaticAnalyzer/Checkers/Checkers.inc
+flang/include/clang/StaticAnalyzer/Checkers/ClangCheckers.h
+flang/include/clang/StaticAnalyzer/Checkers/LocalCheckers.h
+flang/include/clang/StaticAnalyzer/Checkers/ObjCRetainCount.h
+flang/include/clang/StaticAnalyzer/Checkers/SValExplainer.h
+flang/include/clang/StaticAnalyzer/Core/Analyses.def
+flang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.h
+flang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
+flang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporterVisitor.h
+flang/include/clang/StaticAnalyzer/Core/BugReporter/BugType.h
+flang/include/clang/StaticAnalyzer/Core/BugReporter/CommonBugCategories.h
+flang/include/clang/StaticAnalyzer/Core/BugReporter/PathDiagnostic.h
+flang/include/clang/StaticAnalyzer/Core/Checker.h
+flang/include/clang/StaticAnalyzer/Core/CheckerManager.h
+flang/include/clang/StaticAnalyzer/Core/CheckerOptInfo.h
+flang/include/clang/StaticAnalyzer/Core/CheckerRegistry.h
+flang/include/clang/StaticAnalyzer/Core/IssueHash.h
+flang/include/clang/StaticAnalyzer/Core/PathDiagnosticConsumers.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/APSIntType.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/BasicValueFactory.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/BlockCounter.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/CheckerHelpers.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/ConstraintManager.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/CoreEngine.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeInfo.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicTypeMap.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/Environment.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/ExplodedGraph.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/ExprEngine.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/LoopWidening.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramStateTrait.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState_Fwd.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/Regions.def
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SValBuilder.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SValVisitor.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.def
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SVals.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/Store.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/StoreRef.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SubEngine.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SummaryManager.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SymExpr.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/SymbolManager.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/Symbols.def
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintManager.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/TaintTag.h
+flang/include/clang/StaticAnalyzer/Core/PathSensitive/WorkList.h
+flang/include/clang/StaticAnalyzer/Frontend/AnalysisConsumer.h
+flang/include/clang/StaticAnalyzer/Frontend/CheckerRegistration.h
+flang/include/clang/StaticAnalyzer/Frontend/FrontendActions.h
+flang/include/clang/StaticAnalyzer/Frontend/ModelConsumer.h
+flang/include/clang/Tooling/ArgumentsAdjusters.h
+flang/include/clang/Tooling/CommonOptionsParser.h
+flang/include/clang/Tooling/CompilationDatabase.h
+flang/include/clang/Tooling/CompilationDatabasePluginRegistry.h
+flang/include/clang/Tooling/Core/Lookup.h
+flang/include/clang/Tooling/Core/QualTypeNames.h
+flang/include/clang/Tooling/Core/Replacement.h
+flang/include/clang/Tooling/FileMatchTrie.h
+flang/include/clang/Tooling/FixIt.h
+flang/include/clang/Tooling/JSONCompilationDatabase.h
+flang/include/clang/Tooling/Refactoring.h
+flang/include/clang/Tooling/RefactoringCallbacks.h
+flang/include/clang/Tooling/ReplacementsYaml.h
+flang/include/clang/Tooling/Tooling.h
+flang/lib/clang/3.9.1/include/__clang_cuda_cmath.h
+flang/lib/clang/3.9.1/include/__clang_cuda_intrinsics.h
+flang/lib/clang/3.9.1/include/__clang_cuda_math_forward_declares.h
+flang/lib/clang/3.9.1/include/__clang_cuda_runtime_wrapper.h
+flang/lib/clang/3.9.1/include/__stddef_max_align_t.h
+flang/lib/clang/3.9.1/include/__wmmintrin_aes.h
+flang/lib/clang/3.9.1/include/__wmmintrin_pclmul.h
+flang/lib/clang/3.9.1/include/adxintrin.h
+flang/lib/clang/3.9.1/include/altivec.h
+flang/lib/clang/3.9.1/include/ammintrin.h
+flang/lib/clang/3.9.1/include/arm_acle.h
+flang/lib/clang/3.9.1/include/arm_neon.h
+flang/lib/clang/3.9.1/include/avx2intrin.h
+flang/lib/clang/3.9.1/include/avx512bwintrin.h
+flang/lib/clang/3.9.1/include/avx512cdintrin.h
+flang/lib/clang/3.9.1/include/avx512dqintrin.h
+flang/lib/clang/3.9.1/include/avx512erintrin.h
+flang/lib/clang/3.9.1/include/avx512fintrin.h
+flang/lib/clang/3.9.1/include/avx512ifmaintrin.h
+flang/lib/clang/3.9.1/include/avx512ifmavlintrin.h
+flang/lib/clang/3.9.1/include/avx512pfintrin.h
+flang/lib/clang/3.9.1/include/avx512vbmiintrin.h
+flang/lib/clang/3.9.1/include/avx512vbmivlintrin.h
+flang/lib/clang/3.9.1/include/avx512vlbwintrin.h
+flang/lib/clang/3.9.1/include/avx512vlcdintrin.h
+flang/lib/clang/3.9.1/include/avx512vldqintrin.h
+flang/lib/clang/3.9.1/include/avx512vlintrin.h
+flang/lib/clang/3.9.1/include/avxintrin.h
+flang/lib/clang/3.9.1/include/bmi2intrin.h
+flang/lib/clang/3.9.1/include/bmiintrin.h
+flang/lib/clang/3.9.1/include/clflushoptintrin.h
+flang/lib/clang/3.9.1/include/cpuid.h
+flang/lib/clang/3.9.1/include/cuda_builtin_vars.h
+flang/lib/clang/3.9.1/include/emmintrin.h
+flang/lib/clang/3.9.1/include/f16cintrin.h
+flang/lib/clang/3.9.1/include/float.h
+flang/lib/clang/3.9.1/include/fma4intrin.h
+flang/lib/clang/3.9.1/include/fmaintrin.h
+flang/lib/clang/3.9.1/include/fxsrintrin.h
+flang/lib/clang/3.9.1/include/htmintrin.h
+flang/lib/clang/3.9.1/include/htmxlintrin.h
+flang/lib/clang/3.9.1/include/ia32intrin.h
+flang/lib/clang/3.9.1/include/immintrin.h
+flang/lib/clang/3.9.1/include/intrin.h
+flang/lib/clang/3.9.1/include/inttypes.h
+flang/lib/clang/3.9.1/include/iso646.h
+flang/lib/clang/3.9.1/include/limits.h
+flang/lib/clang/3.9.1/include/lzcntintrin.h
+flang/lib/clang/3.9.1/include/mm3dnow.h
+flang/lib/clang/3.9.1/include/mm_malloc.h
+flang/lib/clang/3.9.1/include/mmintrin.h
+flang/lib/clang/3.9.1/include/module.modulemap
+flang/lib/clang/3.9.1/include/msa.h
+flang/lib/clang/3.9.1/include/mwaitxintrin.h
+flang/lib/clang/3.9.1/include/nmmintrin.h
+flang/lib/clang/3.9.1/include/opencl-c.h
+flang/lib/clang/3.9.1/include/pkuintrin.h
+flang/lib/clang/3.9.1/include/pmmintrin.h
+flang/lib/clang/3.9.1/include/popcntintrin.h
+flang/lib/clang/3.9.1/include/prfchwintrin.h
+flang/lib/clang/3.9.1/include/rdseedintrin.h
+flang/lib/clang/3.9.1/include/rtmintrin.h
+flang/lib/clang/3.9.1/include/s390intrin.h
+flang/lib/clang/3.9.1/include/shaintrin.h
+flang/lib/clang/3.9.1/include/smmintrin.h
+flang/lib/clang/3.9.1/include/stdalign.h
+flang/lib/clang/3.9.1/include/stdarg.h
+flang/lib/clang/3.9.1/include/stdatomic.h
+flang/lib/clang/3.9.1/include/stdbool.h
+flang/lib/clang/3.9.1/include/stddef.h
+flang/lib/clang/3.9.1/include/stdint.h
+flang/lib/clang/3.9.1/include/stdnoreturn.h
+flang/lib/clang/3.9.1/include/tbmintrin.h
+flang/lib/clang/3.9.1/include/tgmath.h
+flang/lib/clang/3.9.1/include/tmmintrin.h
+flang/lib/clang/3.9.1/include/unwind.h
+flang/lib/clang/3.9.1/include/vadefs.h
+flang/lib/clang/3.9.1/include/varargs.h
+flang/lib/clang/3.9.1/include/vecintrin.h
+flang/lib/clang/3.9.1/include/wmmintrin.h
+flang/lib/clang/3.9.1/include/x86intrin.h
+flang/lib/clang/3.9.1/include/xmmintrin.h
+flang/lib/clang/3.9.1/include/xopintrin.h
+flang/lib/clang/3.9.1/include/xsavecintrin.h
+flang/lib/clang/3.9.1/include/xsaveintrin.h
+flang/lib/clang/3.9.1/include/xsaveoptintrin.h
+flang/lib/clang/3.9.1/include/xsavesintrin.h
+flang/lib/clang/3.9.1/include/xtestintrin.h
+flang/lib/cmake/clang/ClangConfig.cmake
+flang/lib/cmake/clang/ClangTargets-%%CMAKE_BUILD_TYPE%%.cmake
+flang/lib/cmake/clang/ClangTargets.cmake
+flang/lib/libclang.so
+flang/lib/libclang.so.3.9
+flang/lib/libclangARCMigrate.a
+flang/lib/libclangAST.a
+flang/lib/libclangASTMatchers.a
+flang/lib/libclangAnalysis.a
+flang/lib/libclangBasic.a
+flang/lib/libclangCodeGen.a
+flang/lib/libclangDriver.a
+flang/lib/libclangDynamicASTMatchers.a
+flang/lib/libclangEdit.a
+flang/lib/libclangFormat.a
+flang/lib/libclangFrontend.a
+flang/lib/libclangFrontendTool.a
+flang/lib/libclangIndex.a
+flang/lib/libclangLex.a
+flang/lib/libclangParse.a
+flang/lib/libclangRewrite.a
+flang/lib/libclangRewriteFrontend.a
+flang/lib/libclangSema.a
+flang/lib/libclangSerialization.a
+flang/lib/libclangStaticAnalyzerCheckers.a
+flang/lib/libclangStaticAnalyzerCore.a
+flang/lib/libclangStaticAnalyzerFrontend.a
+flang/lib/libclangTooling.a
+flang/lib/libclangToolingCore.a
+flang/libexec/c++-analyzer
+flang/libexec/ccc-analyzer
+flang/man/man1/scan-build.1.gz
+flang/share/clang/clang-format-bbedit.applescript
+flang/share/clang/clang-format-diff.py
+flang/share/clang/clang-format-sublime.py
+flang/share/clang/clang-format.el
+flang/share/clang/clang-format.py
+flang/share/scan-build/scanview.css
+flang/share/scan-build/sorttable.js
+flang/share/scan-view/FileRadar.scpt
+flang/share/scan-view/GetRadarVersion.scpt
+flang/share/scan-view/Reporter.py
+flang/share/scan-view/ScanView.py
+flang/share/scan-view/bugcatcher.ico
+flang/share/scan-view/startfile.py

Added: head/devel/flang/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/Makefile	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,52 @@
+# Created by: Johannes M Dieterich <jmd@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME=	flang
+DISTVERSION=	3.9-20170518
+CATEGORIES=	devel
+
+MAINTAINER=	jmd@FreeBSD.org
+COMMENT=	Fortran compiler targeting LLVM
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE.txt
+
+BUILD_DEPENDS=	llvm39>=0:devel/llvm39 \
+		openmp>=0:devel/openmp \
+		flang-clang>=0:devel/flang-clang
+RUN_DEPENDS=	llvm39>=0:devel/llvm39 \
+		openmp>=0:devel/openmp \
+		flang-clang>=0:devel/flang-clang
+
+ONLY_FOR_ARCHS=	amd64
+ONLY_FOR_ARCHS_REASON_amd64=	for now only builds and is supported on amd64
+
+USE_LDCONFIG=	${PREFIX}/flang/lib
+USES=		cmake:outsource compiler:c++11-lib libedit perl5 tar:xz \
+		shebangfix
+USES_PYTHON?=	python:build
+USES+=		${_USES_PYTHON}
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	flang-compiler
+GH_TAGNAME=	a9ccdd7
+
+CMAKE_ARGS+=	-DLLVM_CONFIG=${LOCALBASE}/bin/llvm-config39 \
+		-DCMAKE_CXX_COMPILER=${LOCALBASE}flang/bin/clang++ \
+		-DCMAKE_C_COMPILER=${LOCALBASE}/flang/bin/clang \
+		-DCMAKE_Fortran_COMPILER=${LOCALBASE}/flang/bin/flang
+
+CMAKE_INSTALL_PREFIX=	${PREFIX}/flang
+
+MAKE_JOBS_UNSAFE=	yes
+
+post-patch:
+	@${CP} -r  ${WRKSRC}/tools/flang2/flang2exe/x86_64-Linux ${WRKSRC}/tools/flang2/flang2exe/x86_64-FreeBSD
+
+post-install:
+	@${SED} -e 's|%%PREFIX%%|${PREFIX}|g' \
+		< ${FILESDIR}/flang.in > \
+		${WRKDIR}/flang
+	${INSTALL_SCRIPT} ${WRKDIR}/flang ${STAGEDIR}/${PREFIX}/bin/flang
+
+.include <bsd.port.mk>

Added: head/devel/flang/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/distinfo	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1495121602
+SHA256 (flang-compiler-flang-3.9-20170518-a9ccdd7_GH0.tar.gz) = ddcd8d00bf4429ca63a47d6509dc4c77708afbeda90133121bdb63505fa005b9
+SIZE (flang-compiler-flang-3.9-20170518-a9ccdd7_GH0.tar.gz) = 3574207

Added: head/devel/flang/files/flang.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/flang.in	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,2 @@
+#!/bin/sh
+%%PREFIX%%/flang/bin/flang -L%%PREFIX%%/flang/lib -lflang -lflangmain -lflangrti -lexecinfo $@

Added: head/devel/flang/files/patch-CMakeLists.txt
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-CMakeLists.txt	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,50 @@
+--- CMakeLists.txt.orig	2017-05-17 00:40:01 UTC
++++ CMakeLists.txt
+@@ -23,7 +23,7 @@ cmake_minimum_required(VERSION 2.8)
+ SET(CMAKE_Fortran_COMPILER_WORKS 1)
+ 
+ if( NOT DEFINED TARGET_ARCHITECTURE )
+-  execute_process(COMMAND uname -i OUTPUT_STRIP_TRAILING_WHITESPACE
++  execute_process(COMMAND uname -m OUTPUT_STRIP_TRAILING_WHITESPACE
+                   OUTPUT_VARIABLE TARGET_ARCHITECTURE)
+   execute_process(COMMAND uname -s OUTPUT_STRIP_TRAILING_WHITESPACE
+                   OUTPUT_VARIABLE TARGET_OS)
+@@ -48,6 +48,19 @@ if( ${TARGET_OS} STREQUAL "Linux" )
+     message("Unsupported architecture: ${TARGET_ARCHITECTURE}" )
+     return()
+   endif()
++elseif( ${TARGET_OS} STREQUAL "FreeBSD" )
++  set(OS "FREEBSD")
++  set(OSNAME "FreeBSD")
++  # this is very hacky!
++  if( ${TARGET_ARCHITECTURE} STREQUAL "amd64" )
++    set(ARCHNAME x86-64)
++    set(ARCH X86)
++    set(WRDSZ 64)
++    set(TARGET_ARCHITECTURE x86_64)
++  else()
++    message("Unsupported architecture: ${TARGET_ARCHITECTURE}" )
++    return()
++  endif()
+ else()
+   message("Unsupported OS: ${TARGET_OS}" )
+   return()
+@@ -56,7 +69,8 @@ endif()
+ # The cmake documentation states that these are set.  They are not so we 
+ # set them here
+ set(CMAKE_HOST_SYSTEM_NAME ${TARGET_OS})
+-set(CMAKE_HOST_SYSTEM_PROCESSOR ${TARGET_ARCHITECTURE})
++# also a hack
++set(CMAKE_HOST_SYSTEM_PROCESSOR "x86-64")
+ 
+ # If we are not building as a part of LLVM, build Flang as an
+ # standalone project, using LLVM as an external library:
+@@ -292,7 +306,7 @@ endif()
+ # Add appropriate flags for GCC
+ if (LLVM_COMPILER_IS_GCC_COMPATIBLE)
+   set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fno-common -Woverloaded-virtual -Wcast-qual -fno-strict-aliasing -pedantic -Wno-long-long -Wall -W -Wno-unused-parameter -Wwrite-strings")
+-  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Werror")
++  set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-macro-redefined -Wno-logical-not-parentheses -Wno-unknown-warning-option")
+ endif ()
+ 
+ if (APPLE)

Added: head/devel/flang/files/patch-runtime_flang_async.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flang_async.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,37 @@
+--- runtime/flang/async.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flang/async.c
+@@ -27,6 +27,8 @@
+  * Fio_asy_close - called from close
+  */
+ 
++#include <sys/signal.h>
++
+ #if !defined(INTERIX86) && !defined(TARGET_INTERIX) && !defined(TARGET_OSX) && !defined(CRAY) && !defined(TARGET_WIN_X8632)
+ 
+ #if !defined(TARGET_WIN_X8664)
+@@ -44,7 +46,6 @@
+ #include "stdioInterf.h"
+ #include "async.h"
+ 
+-
+ #define FIO_MAX_ASYNC_TRANSACTIONS 16
+ 
+ /* one struct per file */
+@@ -320,7 +321,7 @@ Fio_asy_read(struct asy *asy, void *adr,
+   asy->aiocb[tn].aio_reqprio = 0;
+   asy->aiocb[tn].aio_buf = adr;
+   asy->aiocb[tn].aio_nbytes = len;
+-  memset(&(asy->aiocb[tn].aio_sigevent), 0, sizeof(sigevent_t));
++  memset(&(asy->aiocb[tn].aio_sigevent), 0, sizeof(struct sigevent));
+   asy->aiocb[tn].aio_offset = asy->atd[tn].off;
+   n = aio_read(&(asy->aiocb[tn]));
+ #endif
+@@ -374,7 +375,7 @@ Fio_asy_write(struct asy *asy, void *adr
+   asy->aiocb[tn].aio_reqprio = 0;
+   asy->aiocb[tn].aio_buf = adr;
+   asy->aiocb[tn].aio_nbytes = len;
+-  memset(&(asy->aiocb[tn].aio_sigevent), 0, sizeof(sigevent_t));
++  memset(&(asy->aiocb[tn].aio_sigevent), 0, sizeof(struct sigevent));
+   asy->aiocb[tn].aio_offset = asy->atd[tn].off;
+   n = aio_write(&(asy->aiocb[tn]));
+ #endif

Added: head/devel/flang/files/patch-runtime_flang_cdexp.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flang_cdexp.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,12 @@
+--- runtime/flang/cdexp.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flang/cdexp.c
+@@ -22,7 +22,8 @@ __mth_i_cdexp(dcmplx_t *dcmplx, double r
+ {
+   double x, y, z;
+   x = exp(real);
+-  sincos(imag, &z, &y);
++  z = sin(imag);
++  y = cos(imag);
+   y *= x;
+   z *= x;
+   d_dummy(y, z); /* should leave y & z in appropriate

Added: head/devel/flang/files/patch-runtime_flang_cexp.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flang_cexp.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,12 @@
+--- runtime/flang/cexp.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flang/cexp.c
+@@ -22,7 +22,8 @@ __mth_i_cexp(cmplx_t *cmplx, float real,
+ {
+   float x, y, z;
+   x = exp(real);
+-  sincosf(imag, &z, &y);
++  z = sinf(imag);
++  y = cosf(imag);
+   y *= x;
+   z *= x;
+   r_dummy(y, z); /* should leave y & z in appropriate

Added: head/devel/flang/files/patch-runtime_flang_stime3f.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flang_stime3f.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,17 @@
+--- runtime/flang/stime3f.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flang/stime3f.c
+@@ -27,13 +27,7 @@
+ 
+ int ENT3F(STIME, stime)(int *tp)
+ {
+-  int i;
+-  time_t t = *tp;
+-
+-  if ((i = stime(&t)))
+-    i = __io_errno();
+-
+-  return i;
++  return EPERM;
+ }
+ 
+ #endif /* !WINNT */

Added: head/devel/flang/files/patch-runtime_flangrti_dumpregs.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flangrti_dumpregs.h	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,11 @@
+--- runtime/flangrti/dumpregs.h.orig	2017-05-17 00:40:01 UTC
++++ runtime/flangrti/dumpregs.h
+@@ -21,6 +21,6 @@
+  *  Declare routines that access the machine registers
+  */
+ 
+-void dumpregs(gregset_t *regs);
+-gregset_t *getRegs(ucontext_t *u);
++void dumpregs(void *regs);
++void *getRegs(ucontext_t *u);
+ 

Added: head/devel/flang/files/patch-runtime_flangrti_erfc__scaled.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flangrti_erfc__scaled.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,11 @@
+--- runtime/flangrti/erfc_scaled.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flangrti/erfc_scaled.c
+@@ -19,7 +19,7 @@
+ #pragma global - Mx, 6, 0x100
+ 
+ #include "mthdecls.h"
+-#if defined(TARGET_WIN) || defined(win32) || defined(TARGET_OSX)
++#if defined(TARGET_WIN) || defined(win32) || defined(TARGET_OSX) || defined(__FreeBSD__)
+ #include <float.h>
+ #else
+ #include <values.h>

Added: head/devel/flang/files/patch-runtime_flangrti_erfc__scaledf.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flangrti_erfc__scaledf.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,11 @@
+--- runtime/flangrti/erfc_scaledf.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flangrti/erfc_scaledf.c
+@@ -19,7 +19,7 @@
+ #pragma global - Mx, 6, 0x100
+ 
+ #include "mthdecls.h"
+-#if defined(TARGET_WIN) || defined(win32) || defined(TARGET_OSX)
++#if defined(TARGET_WIN) || defined(win32) || defined(TARGET_OSX) || defined(__FreeBSD__)
+ #include <float.h>
+ #else
+ #include <values.h>

Added: head/devel/flang/files/patch-runtime_flangrti_iostdinit.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flangrti_iostdinit.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,28 @@
+--- runtime/flangrti/iostdinit.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flangrti/iostdinit.c
+@@ -160,7 +160,7 @@ __io_ferror(void *p)
+ int
+ __io_getfd(void *fp)
+ {
+-  return (((FILE *)fp)->_fileno);
++  return (((FILE *)fp)->_file);
+ }
+ 
+ /* is a tty? */
+@@ -270,14 +270,14 @@ extern long *_imp___timezone_dll; /* for
+ #define timezone _timezone /* cygnus, timezone is usually a function */
+ #endif
+ 
+-#elif !defined(DEC) && !defined(IBM) && !defined(ST100_V1_2) &&                !defined(OSX86) /* !defined(WINNT) */
++#elif !defined(DEC) && !defined(IBM) && !defined(ST100_V1_2) &&                !defined(OSX86) && !defined(__FreeBSD__) /* !defined(WINNT) */
+ extern time_t timezone; /* for the rest */
+ #endif
+ 
+ int
+ __io_timezone(void *tm)
+ {
+-#if defined(SUN4) || defined(PPC) || defined(OSX86)
++#if defined(SUN4) || defined(PPC) || defined(OSX86) || defined(__FreeBSD__)
+   return ((struct tm *)tm)->tm_gmtoff;
+ #elif defined(WINNT) || defined(WIN64) || defined(WIN32)
+   return (0);

Added: head/devel/flang/files/patch-runtime_flangrti_trace__lin.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flangrti_trace__lin.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,20 @@
+--- runtime/flangrti/trace_lin.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flangrti/trace_lin.c
+@@ -85,7 +85,7 @@ static struct sigs sigs[] = {
+     {0, CODNULL, NULL} /* end of list */
+ };
+ 
+-static gregset_t *regs; /* pointer to regs at signal  */
++static void *regs; /* pointer to regs at signal  */
+ 
+ /* walk the stack back */
+ 
+@@ -99,7 +99,7 @@ __abort_trace(int skip)
+   char **strings;
+   size_t i, n;
+ 
+-  if (regs != (gregset_t *)0) {
++  if (regs != (void *)0) {
+     dumpregs(regs);
+   }
+ 

Added: head/devel/flang/files/patch-runtime_flangrti_x86__64-Linux_dumpregs.c
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/files/patch-runtime_flangrti_x86__64-Linux_dumpregs.c	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,11 @@
+--- runtime/flangrti/x86_64-Linux/dumpregs.c.orig	2017-05-17 00:40:01 UTC
++++ runtime/flangrti/x86_64-Linux/dumpregs.c
+@@ -40,7 +40,7 @@
+ #define RSP 15
+ #define RIP 16
+ 
+-#if defined(TARGET_OSX) || defined(TARGET_WIN)
++#if defined(TARGET_OSX) || defined(TARGET_WIN) || defined(__FreeBSD__)
+ /* no gregs and/or ucontext defined in for OSX or Windows */
+ void * 
+ getRegs(void *u)

Added: head/devel/flang/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/devel/flang/pkg-descr	Fri May 19 02:01:51 2017	(r441207)
@@ -0,0 +1,3 @@
+Fortran compiler targeting LLVM (modified clang part)
+

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201705190201.v4J21pBo051603>