1.7. tmp ncurses-6.2

#!/bin/sh
# Copyright © 1999-2022 Gerard Beekmans
# Copyright © 2017-2022 Random Crew
# Distributed under the terms of MIT License.

Configuration

src_config()
{
    sed -i s/mawk// configure

    mkdir build
    pushd build
        ../configure
        make -C include
        make -C progs tic
    popd

    ./configure \
            --prefix=${PREFIX}           \
            --host=${LFS_TGT}            \
            --build=$(./config.guess)    \
            --mandir=${PREFIX}/share/man \
            --with-manpage-format=normal \
            --with-shared                \
            --without-debug              \
            --without-ada                \
            --enable-widec
}

Compilation

src_compile()
{
    make ${MAKEOPTS}
}

Installation

The string with rootprefix means that block after check with ause method will be executed, if project has word rootprefix in it. In that case several essential packages are installed to root directory / along with /usr. When the system is merged to /usr, this block of code is not performed.

src_install()
{
    make DESTDIR=${D} TIC_PATH=$(pwd)/build/progs/tic install ${MAKEOPTS}
    echo "INPUT(-lncursesw)" > ${D}${PREFIX}/lib/libncurses.so

    if ause 'rootprefix' ; then
        mkdir -p ${D}/lib
        mv ${D}${PREFIX}/lib/libncursesw.so.6* ${D}/lib
        ln -sf ../../lib/$(readlink ${D}${PREFIX}/lib/libncursesw.so) ${D}${PREFIX}/lib/libncursesw.so
    fi
}

Links

url.lfs: https://linuxfromscratch.org/lfs/view/10.0/chapter08/ncurses.html
url.lfs.stage1: https://linuxfromscratch.org/lfs/view/10.0/chapter06/ncurses.html