Skip to content

Commit

Permalink
Merge pull request #300 from Wolf3s/Xbox
Browse files Browse the repository at this point in the history
Add Xbox/Xbox 360 Support.
  • Loading branch information
sahlberg authored Jan 4, 2024
2 parents 839cde5 + fd85cf3 commit 0997fea
Show file tree
Hide file tree
Showing 19 changed files with 1,676 additions and 28 deletions.
24 changes: 24 additions & 0 deletions README
Original file line number Diff line number Diff line change
Expand Up @@ -280,3 +280,27 @@ KallistiOS toolchain install location addons folder.
NOTE: There is not yet a kos-ports entry for libsmb2 but once a versioned release
that includes Dreamcast support is created installing from kos-ports will become
the preferred method of installation.

Xbox (Xbox XDK)
----------------------
Xbox CPU is acustom Intel Pentium III Coppermine-based processor which only supports litlle endian values.
To compile libsmb2 for the Xbox, first install the Xbox XDK(with all features), Microsoft Visual C++ 2003 Professional and Windows XP.

Then to build libsmb2, go to Xbox folder
and open the provided .sln file, Then hit the green button to build:

The process will result a libsmb2.lib. So you can copy the include files
and the .lib file to your Xbox project.

Xbox 360 (Xbox 360 SDK)
----------------------
Xbox 360 CPU is a PPC(PowerPC) Xenon which only supports only big endian values.
To compile libsmb2 for the Xbox 360, first install the Xbox 360 SDK(with all features), Microsoft Visual C++ 2010 Ultimate and Windows XP(Recommended) or Windows 7.

Then to build libsmb2, go to Xbox 360 folder
and open the provided .sln file, Then hit the green button to build:

The process will result a libsmb2.lib. So you can copy the include files
and the .lib file to your Xbox 360 project.

NOTE: Both ports was based on XBMC-360 port by BDC(Brent De Cartet) and now being updated to libsmb2 standards to best performance.
32 changes: 32 additions & 0 deletions Xbox 360/libsmb2.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsmb2", "libsmb2.vcxproj", "{B2F1D3EE-7D56-4862-9286-5937E1A554A4}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
CodeAnalysis|Xbox 360 = CodeAnalysis|Xbox 360
Debug|Xbox 360 = Debug|Xbox 360
Profile_FastCap|Xbox 360 = Profile_FastCap|Xbox 360
Profile|Xbox 360 = Profile|Xbox 360
Release_LTCG|Xbox 360 = Release_LTCG|Xbox 360
Release|Xbox 360 = Release|Xbox 360
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.CodeAnalysis|Xbox 360.ActiveCfg = CodeAnalysis|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.CodeAnalysis|Xbox 360.Build.0 = CodeAnalysis|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Debug|Xbox 360.ActiveCfg = Debug|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Debug|Xbox 360.Build.0 = Debug|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Profile_FastCap|Xbox 360.ActiveCfg = Profile_FastCap|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Profile_FastCap|Xbox 360.Build.0 = Profile_FastCap|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Profile|Xbox 360.ActiveCfg = Profile|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Profile|Xbox 360.Build.0 = Profile|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Release_LTCG|Xbox 360.ActiveCfg = Release_LTCG|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Release_LTCG|Xbox 360.Build.0 = Release_LTCG|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Release|Xbox 360.ActiveCfg = Release|Xbox 360
{B2F1D3EE-7D56-4862-9286-5937E1A554A4}.Release|Xbox 360.Build.0 = Release|Xbox 360
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
317 changes: 317 additions & 0 deletions Xbox 360/libsmb2.vcxproj

Large diffs are not rendered by default.

259 changes: 259 additions & 0 deletions Xbox 360/libsmb2.vcxproj.filters
Original file line number Diff line number Diff line change
@@ -0,0 +1,259 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup>
<None Include="..\include\Makefile.am">
<Filter>include</Filter>
</None>
<None Include="..\lib\CMakeLists.txt">
<Filter>lib</Filter>
</None>
<None Include="..\COPYING" />
<None Include="..\README" />
</ItemGroup>
<ItemGroup>
<Filter Include="include">
<UniqueIdentifier>{028f1ea9-92cf-4908-a035-80459a8cf956}</UniqueIdentifier>
</Filter>
<Filter Include="include\smb2">
<UniqueIdentifier>{28810bac-fb60-4810-8ce9-1d5c989d4c75}</UniqueIdentifier>
</Filter>
<Filter Include="lib">
<UniqueIdentifier>{8f3e89d9-a92f-4650-a970-3af5fddd92fe}</UniqueIdentifier>
</Filter>
<Filter Include="include\msvc">
<UniqueIdentifier>{84dc3fac-09d1-446a-97da-fc0fee2bf6c3}</UniqueIdentifier>
</Filter>
<Filter Include="include\msvc\sys">
<UniqueIdentifier>{afbefc44-9daf-45e5-aacd-fe33021175a2}</UniqueIdentifier>
</Filter>
<Filter Include="include\xbox 360">
<UniqueIdentifier>{6c01c6cd-316c-4bff-82ea-f611e60057e9}</UniqueIdentifier>
</Filter>
</ItemGroup>
<ItemGroup>
<ClInclude Include="..\include\smb2\libsmb2.h">
<Filter>include\smb2</Filter>
</ClInclude>
<ClInclude Include="..\include\smb2\libsmb2-dcerpc.h">
<Filter>include\smb2</Filter>
</ClInclude>
<ClInclude Include="..\include\smb2\libsmb2-dcerpc-lsa.h">
<Filter>include\smb2</Filter>
</ClInclude>
<ClInclude Include="..\include\smb2\libsmb2-dcerpc-srvsvc.h">
<Filter>include\smb2</Filter>
</ClInclude>
<ClInclude Include="..\include\smb2\libsmb2-raw.h">
<Filter>include\smb2</Filter>
</ClInclude>
<ClInclude Include="..\include\smb2\smb2.h">
<Filter>include\smb2</Filter>
</ClInclude>
<ClInclude Include="..\include\smb2\smb2-errors.h">
<Filter>include\smb2</Filter>
</ClInclude>
<ClInclude Include="..\include\libsmb2-private.h">
<Filter>include</Filter>
</ClInclude>
<ClInclude Include="..\include\portable-endian.h">
<Filter>include</Filter>
</ClInclude>
<ClInclude Include="..\include\slist.h">
<Filter>include</Filter>
</ClInclude>
<ClInclude Include="..\lib\aes.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\aes128ccm.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\compat.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\hmac-md5.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\krb5-wrapper.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\md4.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\md5.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\ntlmssp.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\sha.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\sha-private.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\smb2-signing.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\lib\smb3-seal.h">
<Filter>lib</Filter>
</ClInclude>
<ClInclude Include="..\include\asprintf.h">
<Filter>include</Filter>
</ClInclude>
<ClInclude Include="..\include\msvc\poll.h">
<Filter>include\msvc</Filter>
</ClInclude>
<ClInclude Include="..\include\msvc\sys\socket.h">
<Filter>include\msvc\sys</Filter>
</ClInclude>
<ClInclude Include="..\include\xbox 360\config.h">
<Filter>include\xbox 360</Filter>
</ClInclude>
</ItemGroup>
<ItemGroup>
<ClCompile Include="..\lib\aes.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\aes128ccm.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\alloc.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\compat.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\dcerpc.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\dcerpc-lsa.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\dcerpc-srvsvc.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\errors.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\hmac.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\hmac-md5.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\init.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\krb5-wrapper.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\libsmb2.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\md4c.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\md5.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\ntlmssp.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\pdu.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\sha1.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\sha224-256.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\sha384-512.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-close.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-create.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-echo.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-error.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-flush.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-ioctl.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-logoff.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-negotiate.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-query-directory.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-query-info.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-read.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-session-setup.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-set-info.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-tree-connect.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-tree-disconnect.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-cmd-write.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-data-file-info.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-data-filesystem-info.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-data-reparse-point.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-data-security-descriptor.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-share-enum.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb2-signing.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\smb3-seal.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\socket.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\sync.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\timestamps.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\unicode.c">
<Filter>lib</Filter>
</ClCompile>
<ClCompile Include="..\lib\usha.c">
<Filter>lib</Filter>
</ClCompile>
</ItemGroup>
</Project>
30 changes: 30 additions & 0 deletions Xbox/libsmb2.sln
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
Microsoft Visual Studio Solution File, Format Version 8.00
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libsmb2", "libsmb2.vcproj", "{7326DFF9-17C3-478F-9EAB-15FC697DC053}"
ProjectSection(ProjectDependencies) = postProject
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfiguration) = preSolution
Debug = Debug
Profile = Profile
Profile_FastCap = Profile_FastCap
Release = Release
Release_LTCG = Release_LTCG
EndGlobalSection
GlobalSection(ProjectConfiguration) = postSolution
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Debug.ActiveCfg = Debug|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Debug.Build.0 = Debug|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Profile.ActiveCfg = Profile|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Profile.Build.0 = Profile|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Profile_FastCap.ActiveCfg = Profile_FastCap|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Profile_FastCap.Build.0 = Profile_FastCap|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Release.ActiveCfg = Release|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Release.Build.0 = Release|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Release_LTCG.ActiveCfg = Release_LTCG|Xbox
{7326DFF9-17C3-478F-9EAB-15FC697DC053}.Release_LTCG.Build.0 = Release_LTCG|Xbox
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
EndGlobalSection
GlobalSection(ExtensibilityAddIns) = postSolution
EndGlobalSection
EndGlobal
Loading

0 comments on commit 0997fea

Please sign in to comment.