Skip to content

Conversation

@dependabot
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Jul 11, 2025

Bumps alpine from 3.18 to 3.22.

Dependabot compatibility score

You can trigger a rebase of this PR by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Note
Automatic rebases have been disabled on this pull request as it has been open for over 30 days.

Bumps alpine from 3.18 to 3.22.

---
updated-dependencies:
- dependency-name: alpine
  dependency-version: '3.22'
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file docker Pull requests that update docker code labels Jul 11, 2025
@thomaslaurenson
Copy link
Collaborator

docker build -t mpqcli:0.7.0 .
[+] Building 9.8s (12/16)                                                                               docker:default
 => [internal] load build definition from Dockerfile                                                              0.0s
 => => transferring dockerfile: 638B                                                                              0.0s
 => [internal] load metadata for docker.io/library/alpine:3.22                                                    0.5s
 => [internal] load .dockerignore                                                                                 0.0s
 => => transferring context: 47B                                                                                  0.0s
 => [builder 1/8] FROM docker.io/library/alpine:3.22@sha256:4bcff63911fcb4448bd4fdacec207030997caf25e9bea4045fa6  0.0s
 => [internal] load build context                                                                                 0.3s
 => => transferring context: 11.10MB                                                                              0.2s
 => CACHED [runtime 2/5] RUN apk add --no-cache     libstdc++     libgcc                                          0.0s
 => CACHED [runtime 3/5] WORKDIR /mpqcli                                                                          0.0s
 => CACHED [builder 2/8] RUN apk add --no-cache     build-base     cmake     git     python3     py3-pip     lib  0.0s
 => CACHED [builder 3/8] WORKDIR /mpqcli                                                                          0.0s
 => [builder 4/8] COPY . .                                                                                        0.9s
 => [builder 5/8] RUN cmake -B build                                                                              1.3s
 => ERROR [builder 6/8] RUN cmake --build build                                                                   6.8s 
------                                                                                                                 
 > [builder 6/8] RUN cmake --build build:                                                                              
0.290 [  1%] Building CXX object extern/StormLib/CMakeFiles/storm.dir/src/adpcm/adpcm.cpp.o                            
0.556 [  1%] Building CXX object extern/StormLib/CMakeFiles/storm.dir/src/huffman/huff.cpp.o
1.103 [  1%] Building C object extern/StormLib/CMakeFiles/storm.dir/src/jenkins/lookup3.c.o
1.430 [  2%] Building C object extern/StormLib/CMakeFiles/storm.dir/src/lzma/C/LzFind.c.o
2.140 [  2%] Building C object extern/StormLib/CMakeFiles/storm.dir/src/lzma/C/LzmaDec.c.o
3.311 [  3%] Building C object extern/StormLib/CMakeFiles/storm.dir/src/lzma/C/LzmaEnc.c.o
5.903 [  3%] Building C object extern/StormLib/CMakeFiles/storm.dir/src/pklib/explode.c.o
6.108 [  3%] Building C object extern/StormLib/CMakeFiles/storm.dir/src/pklib/implode.c.o
6.465 [  4%] Building CXX object extern/StormLib/CMakeFiles/storm.dir/src/sparse/sparse.cpp.o
6.627 [  4%] Building CXX object extern/StormLib/CMakeFiles/storm.dir/src/FileStream.cpp.o
6.709 /mpqcli/extern/StormLib/src/FileStream.cpp: In function 'bool BaseFile_Open(TFileStream*, const TCHAR*, DWORD)':
6.709 /mpqcli/extern/StormLib/src/FileStream.cpp:165:23: error: aggregate 'BaseFile_Open(TFileStream*, const TCHAR*, DWORD)::stat64 fileinfo' has incomplete type and cannot be defined
6.709   165 |         struct stat64 fileinfo;
6.709       |                       ^~~~~~~~
6.711 /mpqcli/extern/StormLib/src/FileStream.cpp:179:12: error: 'fstat64' was not declared in this scope; did you mean 'stat64'?
6.711   179 |         if(fstat64(handle, &fileinfo) == -1)
6.711       |            ^~~~~~~
6.711       |            stat64
6.714 /mpqcli/extern/StormLib/src/FileStream.cpp: In function 'bool BaseFile_Read(TFileStream*, ULONGLONG*, void*, DWORD)':
6.714 /mpqcli/extern/StormLib/src/FileStream.cpp:242:58: error: 'off64_t' was not declared in this scope; did you mean 'off_t'?
6.714   242 |             lseek64((intptr_t)pStream->Base.File.hFile, (off64_t)(ByteOffset), SEEK_SET);
6.714       |                                                          ^~~~~~~
6.714       |                                                          off_t
6.717 /mpqcli/extern/StormLib/src/FileStream.cpp:242:13: error: 'lseek64' was not declared in this scope; did you mean 'lseek'?
6.717   242 |             lseek64((intptr_t)pStream->Base.File.hFile, (off64_t)(ByteOffset), SEEK_SET);
6.717       |             ^~~~~~~
6.717       |             lseek
6.719 /mpqcli/extern/StormLib/src/FileStream.cpp: In function 'bool BaseFile_Write(TFileStream*, ULONGLONG*, const void*, DWORD)':
6.719 /mpqcli/extern/StormLib/src/FileStream.cpp:313:58: error: 'off64_t' was not declared in this scope; did you mean 'off_t'?
6.719   313 |             lseek64((intptr_t)pStream->Base.File.hFile, (off64_t)(ByteOffset), SEEK_SET);
6.719       |                                                          ^~~~~~~
6.719       |                                                          off_t
6.721 /mpqcli/extern/StormLib/src/FileStream.cpp:313:13: error: 'lseek64' was not declared in this scope; did you mean 'lseek'?
6.721   313 |             lseek64((intptr_t)pStream->Base.File.hFile, (off64_t)(ByteOffset), SEEK_SET);
6.721       |             ^~~~~~~
6.721       |             lseek
6.724 /mpqcli/extern/StormLib/src/FileStream.cpp: In function 'bool BaseFile_Resize(TFileStream*, ULONGLONG)':
6.724 /mpqcli/extern/StormLib/src/FileStream.cpp:374:61: error: 'off64_t' was not declared in this scope; did you mean 'off_t'?
6.724   374 |         if(ftruncate64((intptr_t)pStream->Base.File.hFile, (off64_t)NewFileSize) == -1)
6.724       |                                                             ^~~~~~~
6.724       |                                                             off_t
6.726 /mpqcli/extern/StormLib/src/FileStream.cpp:374:12: error: 'ftruncate64' was not declared in this scope; did you mean 'ftruncate'?
6.726   374 |         if(ftruncate64((intptr_t)pStream->Base.File.hFile, (off64_t)NewFileSize) == -1)
6.726       |            ^~~~~~~~~~~
6.726       |            ftruncate
6.727 /mpqcli/extern/StormLib/src/FileStream.cpp: In function 'bool BaseMap_Open(TFileStream*, LPCTSTR, DWORD)':
6.727 /mpqcli/extern/StormLib/src/FileStream.cpp:574:19: error: aggregate 'BaseMap_Open(TFileStream*, LPCTSTR, DWORD)::stat64 fileinfo' has incomplete type and cannot be defined
6.727   574 |     struct stat64 fileinfo;
6.727       |                   ^~~~~~~~
6.730 /mpqcli/extern/StormLib/src/FileStream.cpp:583:12: error: 'fstat64' was not declared in this scope; did you mean 'stat64'?
6.730   583 |         if(fstat64(handle, &fileinfo) != -1)
6.730       |            ^~~~~~~
6.730       |            stat64
6.758 gmake[2]: *** [extern/StormLib/CMakeFiles/storm.dir/build.make:205: extern/StormLib/CMakeFiles/storm.dir/src/FileStream.cpp.o] Error 1
6.758 gmake[1]: *** [CMakeFiles/Makefile2:230: extern/StormLib/CMakeFiles/storm.dir/all] Error 2
6.758 gmake: *** [Makefile:156: all] Error 2
------
Dockerfile:19
--------------------
  17 |     RUN cmake -B build
  18 |     
  19 | >>> RUN cmake --build build
  20 |     
  21 |     RUN pip install --no-cache-dir -r test/requirements.txt
--------------------
ERROR: failed to build: failed to solve: process "/bin/sh -c cmake --build build" did not complete successfully: exit code: 2
make: *** [Makefile:23: docker_build] Error 1

@thomaslaurenson
Copy link
Collaborator

  • Known issue with Alpine Linux 3.22 (and musl 1.2.5+)
  • Alpine removed the legacy *64 symbols
  • Includes: stat64, fstat64, lseek64, ftruncate64, off64_t, fstat64
  • These are used in FileStream.cpp

Potential fix:

#if defined(__linux__) && !defined(__GLIBC__)
#define stat64 stat
#define fstat64 fstat
#define lseek64 lseek
#define ftruncate64 ftruncate
#define off64_t off_t
#endif

@thomaslaurenson
Copy link
Collaborator

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file docker Pull requests that update docker code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants