Skip to content
Michael Grossniklaus edited this page Aug 26, 2023 · 22 revisions

This page provides a tutorial on how to build the LLVM frontend for the Oberon programming language on macOS. Since this project uses CMake to manage its build process, it is recommended to use the CLion IDE under macOS, which uses CMakeLists.txt natively as its project model. Furthermore, the Apple Clang toolchain is assumed to be used to compile the frontend.

[[TOC]]

Prerequisites

Before the Oberon LLVM frontend can be built, the Boost libraries (algorithm, convert, filesystem, and program-options components) and the LLVM Compiler Infrastructure (core libraries and tools) need to be installed. Using Homebrew is recommended to accomplish this. Note that this tutorial assumes that standard build tools such as git, make, and cmake are available on the system used to build the frontend. Otherwise, these tools can also be installed using Homebrew.

Installing Boost

brew install boost

Installing LLVM

brew install llvm

Building the Frontend

The LLVM frontend for the Oberon programming language on macOS can be built from the command line or using an IDE that supports CMake projects such as CLion.

Begin by cloning the project repository from GitLab.

git clone https://gitlab.inf.uni-konstanz.de/michael.grossniklaus/oberon-lang.git

Command Line

  1. Navigate to the oberon-lang directory and create a new build directory. Then, navigate to the newly created build directory.

    cd oberon-lang
    
    mkdir build
    
    cd build
    
  2. Invoke CMake to set up the build toolchain and generate the required build files.

    cmake .. -G "Unix Makefiles"
    
  3. As a result, CMake will generate Makefiles that can be used to build the frontend.

    make
    

After the build successfully terminates, the oberon-lang binary can be found in the oberon-lang/build/src subdirectory.

CLion

  1. Start CLion and select Open in the welcome dialog.

  2. Navigate to the oberon-lang directory to which you cloned the project repository and click Open.

  3. Once the project is open, build it using the BuildBuild Project menu.

After the build successfully terminates, the oberon-lang binary can be found in the oberon-lang/cmake-build-debug/src or oberon-lang/cmake-build-release/src subdirectory.

A Note on Apple Silicon

On systems based on Apple Silicon (e.g., M1 and M2), passing the command line argument -DCMAKE_OSX_ARCHITECTURES=arm64 to CMake may be required to ensure that an ARM64 binary is built.