1# $NetBSD: gen_workspace.sh,v 1.2 2001/03/04 16:51:05 uch Exp $
2#
3# Copyright (c) 1999, 2000 Christopher G. Demetriou.  All rights reserved.
4#
5# Redistribution and use in source and binary forms, with or without
6# modification, are permitted provided that the following conditions
7# are met:
8# 1. Redistributions of source code must retain the above copyright
9#    notice, this list of conditions and the following disclaimer.
10# 2. Redistributions in binary form must reproduce the above copyright
11#    notice, this list of conditions and the following disclaimer in the
12#    documentation and/or other materials provided with the distribution.
13# 3. All advertising materials mentioning features or use of this software
14#    must display the following acknowledgement:
15#      This product includes software developed by Christopher G. Demetriou
16#      for the NetBSD Project.
17# 4. The name of the author may not be used to endorse or promote products
18#    derived from this software without specific prior written permission
19#
20# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
21# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
22# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
23# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
24# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
25# NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
26# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
27# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
28# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
29# THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
30
31AWK=awk
32if [ `uname` = SunOS ]; then
33	AWK=nawk
34fi
35
36vc_ver=$1
37shift
38WORKSPACE_FILE=$1
39shift
40SORTED_PROJECTS=`(for project in $*; do
41			echo $project
42		done) | sort`
43
44(
45case $vc_ver in
46"vc5")
47    echo "Microsoft Developer Studio Workspace File, Format Version 5.00"
48    suffix=dsp
49    ;;
50"vc6")
51    echo "Microsoft Developer Studio Workspace File, Format Version 6.00"
52    suffix=dsp
53    ;;
54"evc3")
55    echo "Microsoft eMbedded Visual Tools Workspace File, Format Version 3.00"
56    suffix=vcp
57    ;;
58*)
59    echo "Unsupported Visual C++ version." 1>&2
60    exit 1
61esac
62
63cat << __EOF__
64# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
65
66###############################################################################
67__EOF__
68
69for project in $SORTED_PROJECTS; do
70	echo ""
71	echo "Project: \"$project\"=.\\$project\\$project.$suffix - Package Owner=<4>"
72	echo ""
73	echo "Package=<5>"
74	echo "{{{"
75	echo "}}}"
76	echo ""
77	echo "Package=<4>"
78	echo "{{{"
79	for libdep in `( . $project/$project.config; echo $LIBDEP_LIST )`; do
80		echo "    Begin Project Dependency"
81		echo "    Project_Dep_Name $libdep"
82		echo "    End Project Dependency"
83	done
84	echo "}}}"
85	echo ""
86	echo "###############################################################################"
87done
88
89cat << __EOF__
90
91Global:
92
93Package=<5>
94{{{
95}}}
96
97Package=<3>
98{{{
99}}}
100
101###############################################################################
102
103__EOF__
104) | awk ' { printf "%s\r\n", $0 }' > ${WORKSPACE_FILE}
105