View Issue Details Jump to Notes ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0015973CMakeCMakepublic2016-02-13 18:112016-06-10 14:31
ReporterPaweł Stankowski 
Assigned ToKitware Robot 
PrioritynormalSeveritytrivialReproducibilityalways
StatusclosedResolutionmoved 
PlatformOSOS Version
Product VersionCMake 3.0.2 
Target VersionFixed in Version 
Summary0015973: ASM-ATT: cannot set assembler using environment variable
DescriptionEnvironment variable cannot be used for ATT dialect, because it contains dash in this variable's name ("ASM-ATT"). Bash and other shells won't parse assignment to variable containing such sign. There is an ugly workaround, though:
env 'ASM-ATT=~/bin/i386-linux-as' cmake ../src

CMakeDetermineASMCompiler.cmake checks for existance of environment variable ASM${ASM_DIALECT} at the early phase of lookup.

This works nicely for NASM and MASM assemblers, because they use underscore instead of dash (ASM_NASM, ASM_MASM).
Steps To Reproduce1. Install two gas assemblers: in system and other directory.
2. In a build directory try to point cmake to the non-default assembler:
env 'ASM-ATT=<PATH-TO-OTHER-ASSEMBLER>' cmake ../src
3. Check which assembler was chosen:
grep ASM-ATT_COMPILER:FILEPATH CMakeCache.txt
Additional InformationI propose to solve that by replacing '-' by '_' when searching for environment variable in CMakeDetermineASMCompiler.cmake. It is possible to preserve backward compatibility by searching for both old and new variable. However, because it was so difficult to set ASM-ATT env variable, it is probably not needed.
TagsNo tags attached.
Attached Files

 Relationships

  Notes
(0040487)
Paweł Stankowski (reporter)
2016-02-13 18:20
edited on: 2016-02-13 18:22

BTW: Maybe some more/other environment variables should be supported.
make checks AS and ASFLAGS environment variables:
https://www.gnu.org/software/make/manual/html_node/Implicit-Variables.html [^]
standard 'CC' and 'CFLAGS' env variables are already supported, why not add the assembler ones?

autoconf sets and automake use 'CCAS' and 'CCASFLAGS' environment variables:
https://www.gnu.org/software/automake/manual/html_node/Assembly-Support.html [^]

(0042940)
Kitware Robot (administrator)
2016-06-10 14:29

Resolving issue as `moved`.

This issue tracker is no longer used. Further discussion of this issue may take place in the current CMake Issues page linked in the banner at the top of this page.

 Issue History
Date Modified Username Field Change
2016-02-13 18:11 Paweł Stankowski New Issue
2016-02-13 18:20 Paweł Stankowski Note Added: 0040487
2016-02-13 18:21 Paweł Stankowski Note Edited: 0040487
2016-02-13 18:21 Paweł Stankowski Note Edited: 0040487
2016-02-13 18:22 Paweł Stankowski Note Edited: 0040487
2016-06-10 14:29 Kitware Robot Note Added: 0042940
2016-06-10 14:29 Kitware Robot Status new => resolved
2016-06-10 14:29 Kitware Robot Resolution open => moved
2016-06-10 14:29 Kitware Robot Assigned To => Kitware Robot
2016-06-10 14:31 Kitware Robot Status resolved => closed


Copyright © 2000 - 2018 MantisBT Team