diff --git a/.gitignore b/.gitignore index 255f7b01..8bd049e2 100644 --- a/.gitignore +++ b/.gitignore @@ -31,3 +31,5 @@ src/.libs src/.deps src/test_* macosx/build/ +CMakeFiles/ +build-*/ diff --git a/Contrib/NuGet/ogg-msvc-x64-build.nuget.bat b/Contrib/NuGet/ogg-msvc-x64-build.nuget.bat new file mode 100644 index 00000000..c7415210 --- /dev/null +++ b/Contrib/NuGet/ogg-msvc-x64-build.nuget.bat @@ -0,0 +1,88 @@ +REM @echo off + +Echo LIB Windows Build NuGet + +REM # XEON x64 Build Vars # +set _SCRIPT_DRIVE=%~d0 +set _SCRIPT_FOLDER=%~dp0 +set INITDIR=%_SCRIPT_FOLDER% +set SRC=%INITDIR%\..\..\ +set BUILDTREE=%SRC%\build-win\ +SET tbs_arch=x64 +SET vcvar_arg=x86_amd64 +SET cmake_platform="Visual Studio 15 2017 Win64" + +REM # VC Vars # +SET VCVAR="%programfiles(x86)%\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat" +if exist %VCVAR% call %VCVAR% %vcvar_arg% +SET VCVAR="%programfiles(x86)%\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" +if exist %VCVAR% call %VCVAR% %vcvar_arg% + +REM # Clean Build Tree # +rd /s /q %BUILDTREE% +mkdir %BUILDTREE% +cd %BUILDTREE% + +:copy_files +set BINDIR=%SRC%\build-nuget\ +rd /s /q %BINDIR% +mkdir %BINDIR% + +:static_LIB +REM # LIB STATIC # +ECHO %cmake_platform% STATIC + +rd /s /q %BUILDTREE%\ogg +mkdir %BUILDTREE%\ogg +cd %BUILDTREE%\ogg +cmake -G %cmake_platform% ^ +-DBUILD_SHARED_LIBS:BOOL=OFF ^ +-DCMAKE_CXX_FLAGS_RELEASE="/MD" ^ +-DCMAKE_CXX_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_C_FLAGS_RELEASE="/MD" ^ +-DCMAKE_C_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_INSTALL_PREFIX=%BINDIR% ^ +-DCMAKE_BUILD_TYPE="Release" %SRC% +cmake --build . --config Release --target install + +move %BINDIR%lib %BINDIR%lib_release +move %BINDIR%bin %BINDIR%bin_release + +REM # Clean Build Tree # +rd /s /q %BUILDTREE%\ogg + +REM # DEBUG # +rd /s /q %BUILDTREE%\ogg +mkdir %BUILDTREE%\ogg +cd %BUILDTREE%\ogg +cmake -G %cmake_platform% ^ +-DBUILD_SHARED_LIBS:BOOL=OFF ^ +-DCMAKE_CXX_FLAGS_RELEASE="/MD" ^ +-DCMAKE_CXX_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_C_FLAGS_RELEASE="/MD" ^ +-DCMAKE_C_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_INSTALL_PREFIX=%BINDIR% ^ +-DCMAKE_BUILD_TYPE="DEBUG" %SRC% +cmake --build . --config DEBUG --target install + +move %BINDIR%lib %BINDIR%lib_debug +move %BINDIR%bin %BINDIR%bin_debug + +REM # TODO: ENABLE SHARED Build +GOTO:nuget_req +mkdir %BINDIR%\static\ +move /Y %BINDIR%\lib %BINDIR%\static\ + +:shared_LIB +REM # LIB SHARED # +ECHO %cmake_platform% SHARED + + +:nuget_req +REM # make nuget packages from binaries # +copy %INITDIR%\ogg-msvc-%tbs_arch%.targets %BINDIR%\ogg-msvc-%tbs_arch%.targets +cd %BUILDTREE% +nuget pack %INITDIR%\ogg-msvc-%tbs_arch%.nuspec +cd %INITDIR% +REM --- exit ---- +GOTO:eof diff --git a/Contrib/NuGet/ogg-msvc-x64.nuspec b/Contrib/NuGet/ogg-msvc-x64.nuspec new file mode 100644 index 00000000..4e4cb923 --- /dev/null +++ b/Contrib/NuGet/ogg-msvc-x64.nuspec @@ -0,0 +1,15 @@ + + + + ogg-msvc-x64 + 1.3.2.8787 + administrator + false + Visual Studio 2017 Release ogg as NuGet package. + + + + + + + \ No newline at end of file diff --git a/Contrib/NuGet/ogg-msvc-x64.targets b/Contrib/NuGet/ogg-msvc-x64.targets new file mode 100644 index 00000000..edb126de --- /dev/null +++ b/Contrib/NuGet/ogg-msvc-x64.targets @@ -0,0 +1,29 @@ + + + + + HAS_ogg;%(PreprocessorDefinitions) + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/lib_release/ogg.lib;%(AdditionalDependencies) + + + + + HAS_ogg;%(PreprocessorDefinitions) + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/lib_debug/ogg.lib;%(AdditionalDependencies) + + + + + diff --git a/Contrib/NuGet/ogg-msvc-x86-build.nuget.bat b/Contrib/NuGet/ogg-msvc-x86-build.nuget.bat new file mode 100644 index 00000000..c2478da6 --- /dev/null +++ b/Contrib/NuGet/ogg-msvc-x86-build.nuget.bat @@ -0,0 +1,88 @@ +REM @echo off + +Echo LIB Windows Build NuGet + +REM # XEON win32 Build Vars # +set _SCRIPT_DRIVE=%~d0 +set _SCRIPT_FOLDER=%~dp0 +set INITDIR=%_SCRIPT_FOLDER% +set SRC=%INITDIR%\..\..\ +set BUILDTREE=%SRC%\build-win\ +SET tbs_arch=x86 +SET vcvar_arg=x86 +SET cmake_platform="Visual Studio 15 2017" + +REM # VC Vars # +SET VCVAR="%programfiles(x86)%\Microsoft Visual Studio\2017\Professional\VC\Auxiliary\Build\vcvarsall.bat" +if exist %VCVAR% call %VCVAR% %vcvar_arg% +SET VCVAR="%programfiles(x86)%\Microsoft Visual Studio\2017\Community\VC\Auxiliary\Build\vcvarsall.bat" +if exist %VCVAR% call %VCVAR% %vcvar_arg% + +REM # Clean Build Tree # +rd /s /q %BUILDTREE% +mkdir %BUILDTREE% +cd %BUILDTREE% + +:copy_files +set BINDIR=%SRC%\build-nuget\ +rd /s /q %BINDIR% +mkdir %BINDIR% + +:static_LIB +REM # LIB STATIC # +ECHO %cmake_platform% STATIC + +rd /s /q %BUILDTREE%\ogg +mkdir %BUILDTREE%\ogg +cd %BUILDTREE%\ogg +cmake -G %cmake_platform% ^ +-DBUILD_SHARED_LIBS:BOOL=OFF ^ +-DCMAKE_CXX_FLAGS_RELEASE="/MD" ^ +-DCMAKE_CXX_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_C_FLAGS_RELEASE="/MD" ^ +-DCMAKE_C_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_INSTALL_PREFIX=%BINDIR% ^ +-DCMAKE_BUILD_TYPE="Release" %SRC% +cmake --build . --config Release --target install + +move %BINDIR%lib %BINDIR%lib_release +move %BINDIR%bin %BINDIR%bin_release + +REM # Clean Build Tree # +rd /s /q %BUILDTREE%\ogg + +REM # DEBUG # +rd /s /q %BUILDTREE%\ogg +mkdir %BUILDTREE%\ogg +cd %BUILDTREE%\ogg +cmake -G %cmake_platform% ^ +-DBUILD_SHARED_LIBS:BOOL=OFF ^ +-DCMAKE_CXX_FLAGS_RELEASE="/MD" ^ +-DCMAKE_CXX_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_C_FLAGS_RELEASE="/MD" ^ +-DCMAKE_C_FLAGS_DEBUG="/MDd" ^ +-DCMAKE_INSTALL_PREFIX=%BINDIR% ^ +-DCMAKE_BUILD_TYPE="DEBUG" %SRC% +cmake --build . --config DEBUG --target install + +move %BINDIR%lib %BINDIR%lib_debug +move %BINDIR%bin %BINDIR%bin_debug + +REM # TODO: ENABLE SHARED Build +GOTO:nuget_req +mkdir %BINDIR%\static\ +move /Y %BINDIR%\lib %BINDIR%\static\ + +:shared_LIB +REM # LIB SHARED # +ECHO %cmake_platform% SHARED + + +:nuget_req +REM # make nuget packages from binaries # +copy %INITDIR%\ogg-msvc-%tbs_arch%.targets %BINDIR%\ogg-msvc-%tbs_arch%.targets +cd %BUILDTREE% +nuget pack %INITDIR%\ogg-msvc-%tbs_arch%.nuspec +cd %INITDIR% +REM --- exit ---- +GOTO:eof diff --git a/Contrib/NuGet/ogg-msvc-x86.nuspec b/Contrib/NuGet/ogg-msvc-x86.nuspec new file mode 100644 index 00000000..afe2028d --- /dev/null +++ b/Contrib/NuGet/ogg-msvc-x86.nuspec @@ -0,0 +1,15 @@ + + + + ogg-msvc-x86 + 1.3.2.8787 + administrator + false + Visual Studio 2017 Release ogg as NuGet package. + + + + + + + \ No newline at end of file diff --git a/Contrib/NuGet/ogg-msvc-x86.targets b/Contrib/NuGet/ogg-msvc-x86.targets new file mode 100644 index 00000000..6fb48027 --- /dev/null +++ b/Contrib/NuGet/ogg-msvc-x86.targets @@ -0,0 +1,29 @@ + + + + + HAS_ogg;%(PreprocessorDefinitions) + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/lib_release/ogg.lib;%(AdditionalDependencies) + + + + + HAS_ogg;%(PreprocessorDefinitions) + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/include;%(AdditionalIncludeDirectories) + + + $(MSBuildThisFileDirectory)../..//build/native/lib_debug/ogg.lib;%(AdditionalDependencies) + + + + +