xref: /freebsd/release/packages/generate-ucl.sh (revision acd546f01e58354af049455472980c6c4a52e18b)
1#!/bin/sh
2#
3#
4
5main() {
6	outname=""
7	origname=""
8	debug=
9	uclsource=
10	while getopts "do:s:u:" arg; do
11		case ${arg} in
12		d)
13			debug=1
14			;;
15		o)
16			outname="${OPTARG}"
17			origname="${OPTARG}"
18			;;
19		s)
20			srctree="${OPTARG}"
21			;;
22		u)
23			uclfile="${OPTARG}"
24			;;
25		*)
26			echo "Unknown argument"
27			;;
28		esac
29	done
30
31	shift $(( ${OPTIND} - 1 ))
32
33	case "${outname}" in
34		*-dev)
35			outname="${outname%%-dev}"
36			;;
37		*-dbg)
38			outname="${outname%%-dbg}"
39			;;
40		*-dev-lib32)
41			outname="${outname%%-dev-lib32}"
42			;;
43		*-dbg-lib32)
44			outname="${outname%%-dbg-lib32}"
45			;;
46		*-man-lib32)
47			outname="${outname%%-man-lib32}"
48			;;
49		*-lib32)
50			outname="${outname%%-lib32}"
51			;;
52		*-lib)
53			outname="${outname%%-lib}"
54			;;
55		*-man)
56			outname="${outname%%-man}"
57			;;
58		${origname})
59			;;
60		*)
61			uclfile="${outname##*}${origname}"
62			outname="${outname##*}${origname}"
63			;;
64	esac
65
66	uclsource="${srctree}/release/packages/template.ucl"
67
68	if [ -n "${debug}" ]; then
69		echo ""
70		echo "==============================================================="
71		echo "DEBUG:"
72		echo "outname=${outname}"
73		echo "origname=${origname}"
74		echo "srctree=${srctree}"
75		echo "uclfile=${uclfile}"
76		echo "vital=${vital}"
77		echo "cp ${uclsource} -> ${uclfile}"
78		echo "==============================================================="
79		echo ""
80		echo ""
81		echo ""
82	fi
83
84	cap_arg="$( make -f ${srctree}/share/mk/bsd.endian.mk -VCAP_MKDB_ENDIAN )"
85	${srctree}/release/packages/generate-ucl.lua \
86		VERSION "${PKG_VERSION}" \
87		PKGNAME "${origname}" \
88		PKGGENNAME "${outname}" \
89		PKG_NAME_PREFIX "${PKG_NAME_PREFIX}" \
90		CAP_MKDB_ENDIAN "${cap_arg}" \
91		PKG_WWW "${PKG_WWW}" \
92		PKG_MAINTAINER "${PKG_MAINTAINER}" \
93		UCLFILES "${srctree}/release/packages/ucl" \
94		${uclsource} ${uclfile}
95}
96
97main "${@}"
98