SUBDIRS="include libedit utils ipc common client logging_r parse server shellutil shell"

configure()
{
    mk_config_header 'include/config.h'

    mk_declare -o \
        MOD_EXT="${MK_DLO_EXT}" \
        LIBDIR="${MK_LIBDIR}" \
        BINDIR="${MK_BINDIR}" \
        SBINDIR="${MK_SBINDIR}" \
        CACHEDIR="${LW_CACHEDIR}"

    mk_define CACHEDIR "\"$LW_CACHEDIR\""

    MK_CFLAGS="$MK_CFLAGS -Wall -Werror -fno-strict-aliasing"

    lw_define_feature_macros

    mk_check_endian

    case "$ENDIANNESS" in
        big) mk_define LW_BIG_ENDIAN;;
        little) mk_define LW_LITTLE_ENDIAN;;
    esac

    mk_define REG_USE_SQLITE

    mk_check_headers \
        stdlib.h \
        sys/varargs.h \
        time.h \
        sys/time.h \
        stdbool.h \
        unistd.h \
        sys/systeminfo.h \
        sys/utsname.h \
        sys/socket.h \
        wc16str.h \
        sys/pstat.h \
        procfs.h \
        sys/procfs.h \
        sys/param.h \
        inttypes.h

    mk_check_headers \
        HEADERDEPS="sys/types.h" \
        sys/sysctl.h sys/user.h

    mk_check_functions \
        HEADERDEPS='ctype.h stdlib.h inttypes.h' \
        isblank strtoll __strtoll strtoull __strtoull

    lw_check_iconv

    mk_check_headers \
	FAIL=yes \
	sqlite3.h uuid/uuid.h
    
    mk_check_libraries \
	FAIL=yes \
	sqlite3 uuid

    mk_check_libraries pthread

    mk_output_file server/lwregd/lwreg.reg
    mk_output_file shell/lw-edit-reg.sh
}

