---
# System prepended metadata

title: '[Blueline] Update and Pre-Alps Readiness - I'
tags: [cycle 19]

---

# [Blueline] Improving build steps for icon-exclaim
###### tags: `cycle 19`

<!-- Add the tag for the current cycle number on top -->

- Shaped by: Christoph, Abishek, Jonas, Will
- Appetite (FTEs, weeks):
- Developers: <!-- Filled in at the betting table unless someone is specifically required here -->

## Problem

## Appetite
<!-- Explain how much time we want to spend and how that constrains the solution -->
- Merge: 1 cycle
- nlohmann: 2 hours
- install step repetition: 1 week
- hard coded build type: 2 hours

## Solution
<!-- The core elements we came up with, presented in a form that’s easy for people to immediately understand -->

## Rabbit holes
<!-- Details about the solution worth calling out to avoid problems -->

## No-gos
<!-- Anything specifically excluded from the concept: functionality or use cases we intentionally aren’t covering to fit the ## appetite or make the problem tractable -->

## Progress
<!-- Don't fill during shaping. This area is for collecting TODOs during building. As first task during building add a preliminary list of coarse-grained tasks for the project and refine them with finer-grained items when it makes sense as you work on them. -->
- [ ] Sync icon-dsl with latest icon-nwp (Abishek, Christoph) [Ongoing PR](https://github.com/C2SM/icon-exclaim/pull/235)
    - [ ] Make sure this memory leak bug [fix](https://gitlab.dkrz.de/icon/icon-nwp/-/merge_requests/1115/diffs) is included 
- [x] Put nlohmann header into icon-dsl (Christoph)
    - [x] Copy all-in-one header into project. (check license)
- [x] install step compiles all files with auto-generated files from icon4py toolchain (Jonas)
    - [x] Manually add all modules for stencils in [depgen.f90.config.in](https://github.com/C2SM/icon-exclaim/blob/icon-dsl/depgen.f90.config.in)
    - [ ] ~~Extend CMake for dycore-stencils to modifiy [depgen.f90.config.in](https://github.com/C2SM/icon-exclaim/blob/icon-dsl/depgen.f90.config.in) with all automatically generated modules~~ Keep it manual
- [ ] Remove hard-coding of build type (debug,release) in the call to CMake in configure script (Abishek, 1-2 hr)