The following issue has been SUBMITTED. 
====================================================================== 
http://public.kitware.com/Bug/view.php?id=12908 
====================================================================== 
Reported By:                Christopher Sean Morrison
Assigned To:                
====================================================================== 
Project:                    CMake
Issue ID:                   12908
Category:                   CMake
Reproducibility:            always
Severity:                   minor
Priority:                   normal
Status:                     new
====================================================================== 
Date Submitted:             2012-01-23 13:31 EST
Last Modified:              2012-01-23 13:31 EST
====================================================================== 
Summary:                    Emacs cmake mode indents incorrectly after multiline
SET()
Description: 
Summary says it all.  If you define a macro that calls set, it will think the
previous line indentation was at that unindented level.  See the example in the
Steps to Reproduce section.

Fortunately, it seems a fix was easy.  See attached.

Steps to Reproduce: 
Indenting this region results in the lines after the DIRNAME_SRC set line all
being at beginning of line.

MACRO(BRLCAD_CHECK_DIRNAME)
  SET(DIRNAME_SRC "
#include <libgen.h>
int main(int argc, char *argv[]) {
(void)dirname(argv[0]);
return 0;
}")
  CHECK_C_SOURCE_RUNS("${DIRNAME_SRC}" HAVE_DIRNAME)
  IF(HAVE_DIRNAME)
    FILE(APPEND ${CONFIG_H_FILE} "#define HAVE_DIRNAME 1\n")
  ENDIF(HAVE_DIRNAME)
ENDMACRO(BRLCAD_CHECK_DIRNAME var)


Additional Information: 
Conveniently, there was already a cmake-line-starts-inside-string() function we
could key off of, so we keep walking backwards until we find an actual statement
inside cmake-find-last-indented-line().

====================================================================== 

Issue History 
Date Modified    Username       Field                    Change               
====================================================================== 
2012-01-23 13:31 Christopher Sean MorrisonNew Issue                             
      
2012-01-23 13:31 Christopher Sean MorrisonFile Added:
cmake-mode-set-indent.patch                    
======================================================================

--

Powered by www.kitware.com

Visit other Kitware open-source projects at 
http://www.kitware.com/opensource/opensource.html

Please keep messages on-topic and check the CMake FAQ at: 
http://www.cmake.org/Wiki/CMake_FAQ

Follow this link to subscribe/unsubscribe:
http://public.kitware.com/cgi-bin/mailman/listinfo/cmake-developers

Reply via email to