Microsoft Developer Studio Workspace File, Format Version 6.00
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!

###############################################################################

Project: "all"=.\all.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name all_dynamic
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name all_static
    End Project Dependency
}}}

###############################################################################

Project: "all_dynamic"=.\all_dynamic.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name flac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name metaflac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name in_flac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name flac_mac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name flac_ren
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name grabbag_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name replaygain_analysis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name replaygain_synthesis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name getopt_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC_dynamic
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC++_dynamic
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC++_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_dynamic
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC++_dynamic
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC++_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libs_common_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name plugin_common_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name utf8_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_cuesheet
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libFLAC
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libFLAC++
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libOggFLAC
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libOggFLAC++
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_seeking
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_streams
    End Project Dependency
}}}

###############################################################################

Project: "all_static"=.\all_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name flac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name metaflac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name in_flac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name flac_mac
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name flac_ren
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name grabbag_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name replaygain_analysis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name replaygain_synthesis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name getopt_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC++_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC++_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libs_common_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name plugin_common_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name utf8_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_cuesheet
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libFLAC
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libFLAC++
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libOggFLAC
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libOggFLAC++
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_seeking
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_streams
    End Project Dependency
}}}

###############################################################################

Project: "flac"=.\src\flac\flac.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name grabbag_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name replaygain_analysis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name replaygain_synthesis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name getopt_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name utf8_static
    End Project Dependency
}}}

###############################################################################

Project: "flac_mac"=.\src\monkeys_audio_utilities\flac_mac\flac_mac.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "flac_ren"=.\src\monkeys_audio_utilities\flac_ren\flac_ren.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "replaygain_analysis_static"=.\src\share\replaygain_analysis\replaygain_analysis_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "replaygain_synthesis_static"=.\src\share\replaygain_synthesis\replaygain_synthesis_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "getopt_static"=.\src\share\getopt\getopt_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "grabbag_static"=.\src\share\grabbag\grabbag_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name replaygain_analysis_static
    End Project Dependency
}}}

###############################################################################

Project: "in_flac"=.\src\plugin_winamp2\in_flac.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name plugin_common_static
    End Project Dependency
}}}

###############################################################################

Project: "libFLAC_dynamic"=.\src\libFLAC\libFLAC_dynamic.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "libFLAC_static"=.\src\libFLAC\libFLAC_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "libFLAC++_dynamic"=".\src\libFLAC++\libFLAC++_dynamic.dsp" - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_dynamic
    End Project Dependency
}}}

###############################################################################

Project: "libFLAC++_static"=".\src\libFLAC++\libFLAC++_static.dsp" - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
}}}

###############################################################################

Project: "libOggFLAC_dynamic"=.\src\libOggFLAC\libOggFLAC_dynamic.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_dynamic
    End Project Dependency
}}}

###############################################################################

Project: "libOggFLAC_static"=.\src\libOggFLAC\libOggFLAC_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
}}}

###############################################################################

Project: "libOggFLAC++_dynamic"=".\src\libOggFLAC++\libOggFLAC++_dynamic.dsp" - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_dynamic
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC++_dynamic
    End Project Dependency
}}}

###############################################################################

Project: "libOggFLAC++_static"=".\src\libOggFLAC++\libOggFLAC++_static.dsp" - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC++_static
    End Project Dependency
}}}

###############################################################################

Project: "metaflac"=.\src\metaflac\metaflac.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name replaygain_analysis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name getopt_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name grabbag_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name utf8_static
    End Project Dependency
}}}

###############################################################################

Project: "plugin_common_static"=.\src\plugin_common\plugin_common_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name replaygain_synthesis_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
}}}

###############################################################################

Project: "test_cuesheet"=.\src\test_grabbag\cuesheet\test_cuesheet.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name grabbag_static
    End Project Dependency
}}}

###############################################################################

Project: "test_libs_common"=.\src\test_libs_common\test_libs_common_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_static
    End Project Dependency
}}}

###############################################################################

Project: "test_libFLAC"=.\src\test_libFLAC\test_libFLAC.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libs_common_static
    End Project Dependency
}}}

###############################################################################

Project: "test_libFLAC++"=".\src\test_libFLAC++\test_libFLAC++.dsp" - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libFLAC++_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libs_common_static
    End Project Dependency
}}}

###############################################################################

Project: "test_libOggFLAC"=.\src\test_libOggFLAC\test_libOggFLAC.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libOggFLAC_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libs_common_static
    End Project Dependency
}}}

###############################################################################

Project: "test_libOggFLAC++"=".\src\test_libOggFLAC++\test_libOggFLAC++.dsp" - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
    Begin Project Dependency
    Project_Dep_Name libOggFLAC++_static
    End Project Dependency
    Begin Project Dependency
    Project_Dep_Name test_libs_common_static
    End Project Dependency
}}}

###############################################################################

Project: "test_seeking"=.\src\test_seeking\test_seeking.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "test_streams"=.\src\test_streams\test_streams.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Project: "utf8_static"=.\src\share\utf8\utf8_static.dsp - Package Owner=<4>

Package=<5>
{{{
}}}

Package=<4>
{{{
}}}

###############################################################################

Global:

Package=<5>
{{{
}}}

Package=<3>
{{{
}}}

###############################################################################

