[Insight-developers] Re: Iowa's ITK dashboard BuildName settings
Hans Johnson
hans-johnson@uiowa.edu
Mon, 03 Mar 2003 12:30:55 -0600
Brad,
Thank you for the information. I just wanted to let you know that I use
the following unix commands to extract the informatation from each
machine. Perhaps this information could make it into a FAQ somewhere.
I call have encapsulated the test builds inside of a Makefile that acts
like a script that gets run by a cron job each night. Here is how I
extract the important information on each of the platforms:
gcc 2.96 compilers
==================
COMPILER_HOSTNAME:=$(shell hostname -s)
COMPILER_PLATFORM:=$(shell uname -s)
COMPILER_NAME:=g++
COMPILER_VERSION:=$(shell g++ --version)
gcc 3xx compilers
=================
COMPILER_HOSTNAME:=$(shell hostname -s)
COMPILER_PLATFORM:=$(shell uname -s)
COMPILER_NAME:=g++
COMPILER_VERSION:=$(word 3, $(shell g++ --version 2>&1)) #g++ --version
2>&1 |awk '{print $3}'
Intel Compilers
===============
COMPILER_HOSTNAME:=$(shell hostname -s)
COMPILER_PLATFORM:=$(shell uname -s)
COMPILER_NAME:=icc
COMPILER_VERSION:=$(word 8, $(shell icc -V 2>&1))#icc -V 2>&1 |head -1
|awk '{print $8}'
SGI MipsPro compilers
=====================
COMPILER_HOSTNAME:=$(shell hostname -s)
COMPILER_PLATFORM:=$(shell uname -s)
COMPILER_NAME:=$(word 1, $(shell CC -version 2>&1 ))
COMPILER_VERSION:=$(word 4, $(shell CC -version 2>&1 ))#CC -version
2>&1|awk '{print $4}'
Then in the common Makefile I use:
==================================
DEFAULT_ITK_USE_SYSTEM_STDLIB=ON
ifeq ($(ARCH), SGI) #Turn on build flag for compiler
DEFAULT_ITK_USE_SYSTEM_STDLIB=OFF
endif
»·cmake $(CONFIGDIR) \
-DCMAKE_CXX_COMPILER:FILEPATH="$(CXX)" \
-DCMAKE_CXX_FLAGS:STRING="$(CXXFLAGS)" \
-DCMAKE_C_COMPILER:FILEPATH="$(CC)" \
-DCMAKE_C_FLAGS:STRING="$(CFLAGS)" \
-DCMAKE_EXE_LINKER_FLAGS:STRING="$(LDFLAGS)" \
-DCMAKE_BUILD_TYPE:STRING=Debug \
-DCMAKE_INSTALL_PREFIX:PATH=$(UNPACKDIR) \
-DEXECUTABLE_OUTPUT_PATH:PATH=$(UNPACKDIR)/bin \
-DLIBRARY_OUTPUT_PATH:PATH=$(UNPACKDIR)/lib \
-DCMAKE_MAKE_PROGRAM:FILEPATH=$(MAKE) \
-DBUILD_APPLICATIONS:BOOL=OFF \
-DBUILD_AUXILIARY:BOOL=OFF \
-DBUILD_EXAMPLES:BOOL=OFF \
-DBUILD_FEM_CODE:BOOL=OFF \
-DBUILD_FEM_MESH_EXAMPLE:BOOL=OFF \
-DBUILD_FLTKIMAGEVIEWER:BOOL=OFF \
-DBUILD_METAIMAGE:BOOL=ON \
-DBUILD_SHARED_LIBS:BOOL=OFF \
-DBUILD_TESTING:BOOL=ON \
-DBUILD_VTKINTERFACE:BOOL=OFF \
-DFEM_USE_SMART_POINTERS:BOOL=OFF \
-DITK_USE_SYSTEM_STDLIB:BOOL=$(DEFAULT_ITK_USE_SYSTEM_STDLIB) \
-DDART_ROOT:PATH=$(UNPACKDIR)/Dart \
-DSITE:STRING=$(COMPILER_HOSTNAME).uiowa \
-DBUILDNAME:STRING=$(COMPILER_PLATFORM)_$(COMPILER_NAME)$(COMPILER_VERSION)
I hope that this helps make the dashboard more readable.
Regards,
Hans
Brad King wrote:
> Hans,
>
> Your site is currently submitting dashboards with the following names:
>
> MHCRC_athlon_DEBUG
> MHCRC_athlon_FAST
> MHCRC_gcc3_DEBUG
> MHCRC_icc_DEBUG
> MHCRC_icc_FAST
> MHCRC_SGI_DEBUG
> MHCRC_SGI_FAST
>
> I've been going through the various dashboards hosted at Kitware and
> trying to organize them a bit. The idea of this organization is to group
> common platforms together on the page. Now that the system information
> test is present in ITK, the dashboard no longer needs to have all the
> platform info in the build name. Please update your builds to have names
> following this convention:
>
> SITE: (machine-name).uiowa
> BUILDNAME: `uname`-(compiler-name)(compiler-version)
>
> For example, the "brodmann MHCRC_gcc3_DEBUG" build could become
>
> brodmann.uiowa Linux-gcc304
>
> or whatever its platform/compiler version is. If there is some special
> nature to the build, add "-brief" to the build name, where "brief" is a
> string of a few letters that distinguish the special build.
>
> Thanks,
> -Brad
--
===================================================================
Hans J. Johnson W294 GH
hans-johnson@uiowa.edu Dept. of Psychiatry
http://www.psychiatry.uiowa.edu/~hjohnson The University of Iowa
(319) 353-8587 Iowa City, IA 52242
===================================================================