From 84884be16503e506cd5ad7f927297fd7d25de779 Mon Sep 17 00:00:00 2001 From: Brad Richardson Date: Thu, 15 Oct 2020 10:28:02 -0500 Subject: Add test for module object file name --- bootstrap/src/BuildModel.hs | 21 ++++++++++----------- 1 file changed, 10 insertions(+), 11 deletions(-) (limited to 'bootstrap/src') diff --git a/bootstrap/src/BuildModel.hs b/bootstrap/src/BuildModel.hs index 043173f..6446a12 100644 --- a/bootstrap/src/BuildModel.hs +++ b/bootstrap/src/BuildModel.hs @@ -44,25 +44,24 @@ data Source = } | Module { moduleSourceFileName :: FilePath + , moduleObjectFileName :: FilePath -> FilePath } processRawSource :: RawSource -> Source processRawSource rawSource = let sourceFileName = rawSourceFilename rawSource parsedContents = parseContents rawSource + objectFileName = + \bd -> bd (pathSeparatorsToUnderscores sourceFileName) <.> "o" in if hasProgramDeclaration parsedContents - then Program - { programSourceFileName = sourceFileName - , programObjectFileName = \buildDirectory -> - buildDirectory - (pathSeparatorsToUnderscores - sourceFileName - ) - <.> "o" - , programModulesUsed = getModulesUsed parsedContents - } + then Program { programSourceFileName = sourceFileName + , programObjectFileName = objectFileName + , programModulesUsed = getModulesUsed parsedContents + } else if hasModuleDeclaration parsedContents - then Module { moduleSourceFileName = sourceFileName } + then Module { moduleSourceFileName = sourceFileName + , moduleObjectFileName = objectFileName + } else undefined pathSeparatorsToUnderscores :: FilePath -> FilePath -- cgit v1.2.3