Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • steamrt/sniper/sdk
1 result
Show changes
Commits on Source (4)
...@@ -79,10 +79,10 @@ is strongly recommended. ...@@ -79,10 +79,10 @@ is strongly recommended.
Tags available for this repository (can be specified after `:` when using Tags available for this repository (can be specified after `:` when using
`docker pull`): `docker pull`):
* `0.20220119.0` (etc.): Specific versions of the SDK. Use one of these * `0.20231107.66301` (etc.): Specific versions of the SDK. Use one of these
if you need to "pin" to an older version for reproducible builds. if you need to "pin" to an older version for reproducible builds.
These version numbers correspond exactly to These version numbers correspond exactly to
<https://repo.steampowered.com/steamrt-images-sniper/snapshots/0.20220119.0/> <https://repo.steampowered.com/steamrt3/images/0.20231107.66301/>
and so on. and so on.
* `latest`, `latest-container-runtime-depot`: * `latest`, `latest-container-runtime-depot`:
...@@ -90,13 +90,13 @@ Tags available for this repository (can be specified after `:` when using ...@@ -90,13 +90,13 @@ Tags available for this repository (can be specified after `:` when using
in the current public stable version of the SteamLinuxRuntime_sniper depot. in the current public stable version of the SteamLinuxRuntime_sniper depot.
If in doubt, build games against this. If in doubt, build games against this.
This should always match the version in This should always match the version in
<https://repo.steampowered.com/steamrt-images-sniper/snapshots/latest-container-runtime-depot/>. <https://repo.steampowered.com/steamrt3/images/latest-container-runtime-depot/>.
* `beta`, `latest-container-runtime-public-beta`: * `beta`, `latest-container-runtime-public-beta`:
An alias pointing to the SDK corresponding to the runtime that is included An alias pointing to the SDK corresponding to the runtime that is included
in the most recent public beta version of the SteamLinuxRuntime_sniper in the most recent public beta version of the SteamLinuxRuntime_sniper
depot. This should always match the version in depot. This should always match the version in
<https://repo.steampowered.com/steamrt-images-sniper/snapshots/latest-container-runtime-public-beta/>. <https://repo.steampowered.com/steamrt3/images/latest-container-runtime-public-beta/>.
If there is currently no public beta available, then this version will If there is currently no public beta available, then this version will
usually be the same as `latest`, or it might even be older than `latest`. usually be the same as `latest`, or it might even be older than `latest`.
Only use this if you know that it is what you want. Only use this if you know that it is what you want.
...@@ -110,7 +110,7 @@ We recommend Docker as the preferred way to develop against sniper. ...@@ -110,7 +110,7 @@ We recommend Docker as the preferred way to develop against sniper.
However, for those who are more familiar with the `schroot` tool or other However, for those who are more familiar with the `schroot` tool or other
non-OCI-based chroot and container environments, the `-sysroot.tar.gz` non-OCI-based chroot and container environments, the `-sysroot.tar.gz`
archives available from archives available from
<https://repo.steampowered.com/steamrt-images-sniper/snapshots/> <https://repo.steampowered.com/steamrt3/images/>
contain the same packages as the official OCI images. contain the same packages as the official OCI images.
[More information about schroot](doc/schroot.md) [More information about schroot](doc/schroot.md)
...@@ -122,11 +122,28 @@ The versions available are the same as for the [OCI images](#oci). ...@@ -122,11 +122,28 @@ The versions available are the same as for the [OCI images](#oci).
## Toolchains ## Toolchains
The sniper SDK has the same compilers as Debian 11: Several sets of compilers are available:
* gcc-9 and g++-9
* gcc-10 and g++-10 (default) * gcc-10 and g++-10 (default)
* gcc-12 and g++-12 (experimental)
* clang-11 and clang++-11 * clang-11 and clang++-11
The experimental `gcc-12` and `g++-12` can be installed by using
`apt-get install gcc-12-monolithic` but are not currently included in
the SDK itself.
To avoid an unexpected upgrade of the Standard C++ library,
`gcc-12`, `g++-12` and any newer versions always behave as though the
`-static-libgcc` and `static-libstdc++` options had been used.
All C++ code in your project should usually be built with the same compiler.
C-based external dependencies such as SDL and GLib are safe to use, but
passing a STL object such as `std::string` to C++-based libraries from
the Steam Runtime or the operating system (for example `libgnutlsxx` or
`libpcrecpp`) will not necessarily work and is best avoided, especially
if you are using `g++-9` or newer.
Most build systems have a way to use a non-default compiler by specifying Most build systems have a way to use a non-default compiler by specifying
its name, for example Autotools `./configure CC=clang CXX=clang++ ...` and its name, for example Autotools `./configure CC=clang CXX=clang++ ...` and
CMake `cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ ...`. CMake `cmake -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ ...`.
...@@ -156,11 +173,11 @@ in the SDK image and do not need to be downloaded separately. An apt repository ...@@ -156,11 +173,11 @@ in the SDK image and do not need to be downloaded separately. An apt repository
is also available, and is preconfigured in the OCI images: is also available, and is preconfigured in the OCI images:
# corresponding to the :latest OCI image # corresponding to the :latest OCI image
deb https://repo.steampowered.com/steamrt-sniper/ sniper main contrib non-free deb https://repo.steampowered.com/steamrt3/apt soldier main contrib non-free
deb-src https://repo.steampowered.com/steamrt-sniper/ sniper main contrib non-free deb-src https://repo.steampowered.com/steamrt3/apt soldier main contrib non-free
# corresponding to the :beta OCI image and not configured by default # corresponding to the :beta OCI image and not configured by default
#deb https://repo.steampowered.com/steamrt-sniper/ sniper_beta main contrib non-free #deb https://repo.steampowered.com/steamrt3/apt soldier_beta main contrib non-free
#deb-src https://repo.steampowered.com/steamrt-sniper/ sniper_beta main contrib non-free #deb-src https://repo.steampowered.com/steamrt3/apt soldier_beta main contrib non-free
sniper is based on, and broadly compatible with, Debian 11 'bullseye'. sniper is based on, and broadly compatible with, Debian 11 'bullseye'.
Many packages in the SDK are taken from Debian 11 without modification, Many packages in the SDK are taken from Debian 11 without modification,
...@@ -181,7 +198,7 @@ packages that are not included in the sniper Platform. ...@@ -181,7 +198,7 @@ packages that are not included in the sniper Platform.
Source code for all the packages that go into the OCI image can be found Source code for all the packages that go into the OCI image can be found
in the appropriate subdirectory of in the appropriate subdirectory of
https://repo.steampowered.com/steamrt-images-sniper/snapshots/ <https://repo.steampowered.com/steamrt3/images/>
(look in the `sources/` directory). (look in the `sources/` directory).
The OCI image is built using The OCI image is built using
......