10696600cSBjoern A. Zeeb#!/bin/sh 20696600cSBjoern A. Zeeb# 30696600cSBjoern A. Zeeb# $FreeBSD$ 40696600cSBjoern A. Zeeb# 50696600cSBjoern A. Zeeb 60696600cSBjoern A. Zeeb# PROVIDE: kldxref 7*93457c4eSEdward Tomasz Napierala# REQUIRE: mountcritlocal 80696600cSBjoern A. Zeeb# BEFORE: netif 90696600cSBjoern A. Zeeb# KEYWORD: nojail 100696600cSBjoern A. Zeeb 110696600cSBjoern A. Zeeb. /etc/rc.subr 120696600cSBjoern A. Zeeb 130696600cSBjoern A. Zeebrcvar="kldxref_enable" 140696600cSBjoern A. Zeebname="kldxref" 150696600cSBjoern A. Zeebdesc="Generate hints for the kernel loader" 160696600cSBjoern A. Zeebstop_cmd=":" 170696600cSBjoern A. Zeebstart_cmd="kldxref_start" 180696600cSBjoern A. Zeeb 190696600cSBjoern A. Zeebkldxref_start() { 200696600cSBjoern A. Zeeb if [ -n "$kldxref_module_path" ]; then 210696600cSBjoern A. Zeeb MODULE_PATHS="$kldxref_module_path" 220696600cSBjoern A. Zeeb else 230696600cSBjoern A. Zeeb MODULE_PATHS=`sysctl -n kern.module_path` 240696600cSBjoern A. Zeeb fi 250696600cSBjoern A. Zeeb IFS=';' 260696600cSBjoern A. Zeeb for MODULE_DIR in $MODULE_PATHS; do 270696600cSBjoern A. Zeeb if checkyesno kldxref_clobber || 280696600cSBjoern A. Zeeb [ ! -f "$MODULE_DIR/linker.hints" ] && 290696600cSBjoern A. Zeeb [ `echo ${MODULE_DIR}/*.ko` != "${MODULE_DIR}/*.ko" ]; then 300696600cSBjoern A. Zeeb echo "Building $MODULE_DIR/linker.hints" 310696600cSBjoern A. Zeeb kldxref "$MODULE_DIR" 320696600cSBjoern A. Zeeb fi 330696600cSBjoern A. Zeeb done 340696600cSBjoern A. Zeeb} 350696600cSBjoern A. Zeeb 360696600cSBjoern A. Zeebload_rc_config $name 370696600cSBjoern A. Zeebrun_rc_command "$1" 38