• src/build/Common.gmake

    From Rob Swindell@1:103/705 to Git commit to sbbs/master on Wed Oct 21 23:52:43 2020
    https://gitlab.synchro.net/sbbs/sbbs/-/commit/f615f2e3ba27c342774c6eb5
    Modified Files:
    src/build/Common.gmake
    Log Message:
    We must explicitly set _FILE_OFFSET_BITS=64 to use Linux OFD locksThe Linux lock() implementation in xpdev/filewrap.c requires that_FILE_OFFSET_BITS is set to 64 or else OFD (sane) locks are notused on Linux, defaulting back to the crazy per-process file regionlocking of Linux of old. This was done in this commit:http://cvs.synchro.net/commitlog.ssjs?99999#39639because:https://patchwo rk.kernel.org/patch/9289177/but on 64-bit Linux, large file support is assumed and you don'tactually need to define _FILE_OFFFSET_BITS, we're peforming thischeck for 32-bit Linuxes. Perhaps a check to see if sizeof(off_t)== 8 would have been better. However, this change enables OFDLocks for *all* flavors of Linux (not just 64-bit) - so that'sbetter.Why do we care? Because using region locks on the same file ina multi-threaded program doesn't really work right on Linux withoutusing OFD Locks. I saw this problem with receiving multiplesimultaneous emails in the mailserver and getting smb_locksmbhdr()errors/failures when trying to save the message data or headersof the one or more messages every time GitLab would send emailout to those whoe have opted-in to received email notificationsupon gitlab.synchro.net activity.
    --- SBBSecho 3.11-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to Git commit to main/sbbs/master on Mon Mar 8 11:10:35 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/4c280dc6e91679cfeb9496a0
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add -std=c++11 for .cpp buildsHope to address error reported by rjwboys via IRC when usinggcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.12) from ansiterm.cpp:22 /user/include/c++/5/bits/c++0x_warning.h:32:2error #error this file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
    --- SBBSecho 3.13-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Wed Mar 31 16:53:27 2021
    https://gitlab.synchro.net/main/sbbs/-/commit/d457835c2f290c5d3ce6f6fd
    Modified Files:
    src/build/Common.gmake
    Log Message:
    os is lower-case.Fixes *nix builds of Win32 programs.
    --- SBBSecho 3.14-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to Git commit to main/sbbs/master on Sun Mar 20 16:24:39 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/2951994bca38d54de846bcb2
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Linux needs strlcpy() defined in xpdev
    --- SBBSecho 3.15-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to Git commit to main/sbbs/master on Fri Jun 10 22:54:03 2022
    https://gitlab.synchro.net/main/sbbs/-/commit/bfd364c8cf904c6e4f5cacf2
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Disable "unused-result" warning in release builds
    --- SBBSecho 3.15-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Apr 13 11:15:39 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/218a0ca5056240ef30757abd
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Allow overriding MIN_MAC_OSX_VERSION
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Mon Jun 5 17:07:54 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/6be51c0f2293e8e35fbd3fc6
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add FORTIFY and SANITIZE options for DEBUG buildsSANITIZE is not fully supported (or recommended) yet.FORTIFY will include some performance hits, but those might be offset by -O1(which is apparently required for _FORTIFY_SOURCE to have any effect).Prevviosly, DEBUG builds used (implicit -O0).I'm building and running sbbs on Vertrauen (git.synchro.net) now with FORTIFY.Set FORTIFY=1 in your localdefs.mk if you wish to have this build optionenabled persistently.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Mon Jun 5 17:35:09 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/84dd1bc7ce3835d8c195f658
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Document the new FORTIFY and SANITIZE options
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on ChromeOS)@1:103/705 to Git commit to main/sbbs/master on Sun Jun 18 14:07:47 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/36dddeff8466954b0b4c52e7
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Include -fno-omit-frame-pointer when usinag ASan and UBSanthis is recommended to reliably display the call stack when using theprint_stacktrace option.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Thu Oct 26 13:13:54 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/5efa9c2f07d323ed0b48aa95
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Remove legacy comments (e.g. references to CVS)
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Thu Oct 26 13:13:54 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/49c64c233857aa31828eccc9
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Disable GCC warning about string truncation

    Fix issue #667

    I'm not sure why these warnings just started popping up (maybe the inclusion
    of string in sbbs.h), but it only seems to happen in debug builds and the possible truncation is intentional.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Mon Nov 13 22:06:40 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/79dd24967cbd5eb765e2bfa0
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Disable unknown warning warning on !gcc
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sun Dec 31 02:54:53 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/9c32887131996963bf219703
    Modified Files:
    src/build/Common.gmake
    Log Message:
    If we're using Clang as the compiler, use it as the assembler too.

    Should fix issue reported by Floffy on IRC.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sun Dec 31 07:04:00 2023
    https://gitlab.synchro.net/main/sbbs/-/commit/ee8414367187c12c7f428219
    Modified Files:
    src/build/Common.gmake
    Log Message:
    clang needs -c for .s files without main
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Fri Jan 26 11:16:17 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/873421e6e903a697c3833c0a
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Bump std= to c11 since we use _Atomic (a C11 addition) in threadwrap
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Wed Feb 7 10:11:46 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/eb4e039b3e86d4d258378efd
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Disable -fpic for Win32
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Wed Feb 7 10:47:17 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/a3b7bd388024f90605369cc4
    Modified Files:
    src/build/Common.gmake
    Log Message:
    win32, not Win32
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Wed Feb 7 13:23:27 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/1fe860f68366353c4e597149
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add WALL option.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Wed Feb 7 20:37:32 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/f469f33ad1e92bb63a8a5abc
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add -MP with -MMD

    This creates a .PHONY target for each file so that if a header is
    renamed, the impact will be the files that include it being rebuilt
    instead of the previous behaviour where the build would simply fail
    and complain that the file doesn't exist.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Wed Feb 7 23:56:15 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/db5b00b5fe7031dad2e7905f
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Allow FORTIFY=1 to work on RELEASE builds too.

    At some point, we should consider making it default.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on Debian Linux)@1:103/705 to Git commit to main/sbbs/master on Thu Feb 8 00:45:01 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/67f387d560540bb1ab2385d7
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Use -Og for fortified debug builds (rather than -O1)
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Feb 8 01:24:22 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/25a1ae1a2cf63877293dbe82
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Possible fix warning in xpprintf() about using a pointer after free.

    If this *does* work, it means that potentially a huge chunk of our
    error checking hasn't actually worked in release builds or builds
    that use the FORTIFY option.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Tue Feb 20 15:11:23 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/31076f888d7c52b9568b7c91
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Fix mingw32 some more.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sat Feb 24 11:42:08 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/a0db957ec310aba71bd0d785
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Latest SDL2 only supports macOS 10.7 and above.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Tue Mar 12 14:12:34 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/5548e05233971536447e47f8
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Enable LTO unless NO_LTO is defined...

    We may want to set NO_LTO for the pipeline...
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Tue Mar 12 14:34:13 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/8ea950825c3cf03c0eee03b5
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Disable LTO for now... it appears LTO is more strict with object ordering.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sun Mar 17 00:13:16 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/2a51c73553d35b207f1062b4
    Modified Files:
    src/build/Common.gmake
    Log Message:
    We need macOS 10.9 for std::atomic
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sat Nov 9 21:02:32 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/0df88fbb8301ea8e34bf0b46
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Old sw_vers on macOS uses a single dash.

    New versions still support that.
    --- SBBSecho 3.21-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on macOS)@1:103/705 to Git commit to main/sbbs/master on Sun Dec 1 16:27:45 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/4dd8a371bcb00863d9a52228
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add -L to LDFLAGS, not CFLAGS for macos builds

    This fixes all the "argument unused during compliation" warnings
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sun Dec 29 18:51:29 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/186e89b7796abf653e1ede1b
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Remove unneeded backslashes from CCPRE detection.

    GNU grep >= 3.8 complains and it's highly confusing.
    Thanks for sticking with it Dan_C.
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sun Dec 29 19:13:45 2024
    https://gitlab.synchro.net/main/sbbs/-/commit/0061b6c4ec60f462424f4e03
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Use `tail -n 1` intead of `grep -v '#'`

    Apple GNU make treats unescaped # in variables as starting a comment.
    But GNU grep >= v3.8 will spew a warning with an extra backslash there.
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Sun Jan 5 03:37:45 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/0f04d3ac37fa02fd663ac408
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Define a macro to indicate if the compiler is actually GCC.

    Pretty much all new compilers these days will define all the GCC
    macros so it's impossible to detect GCC from predefined macros
    without adding a list of all the compilers that pretend to be GCC
    if defined(__GNUC__) && !defined(__clang__) && !defined(____INTEL_COMPILER)
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Tue Jan 7 20:53:46 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/405f58b750c7d25358a42000
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Don't explicitly omit the frame pointer.

    At -O3, the only reason the frame pointer will be retained is when
    removing it makes it impossible to get any reasonable information
    out of a core dump.

    I personally prefer to take the small performance hit on affected
    platforms and always include the frame pointer because it makes
    profiling release builds possible... but I can manually make that
    adjustment when I want to.
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Thu Jan 9 11:33:29 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/a4fbfd0bf823af136f6078b3
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Define NDEBUG for RELEASE builds

    We don't want our assertions asserting.
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on macOS)@1:103/705 to Git commit to main/sbbs/master on Fri Jan 24 18:23:02 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/abdeb48fa0ef12e4513a9db5
    Modified Files:
    src/build/Common.gmake
    Log Message:
    macOS Clang linker - don't warn about duplicate libraries
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell (on macOS)@1:103/705 to Git commit to main/sbbs/master on Fri Jan 24 18:35:18 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/e13a3b619f2455f4ddc82e00
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Revert "macOS Clang linker - don't warn about duplicate libraries"

    This reverts commit abdeb48fa0ef12e4513a9db5d469878e8b79756d.

    Apparently the Clang on the x86 Mac mini build node doesn't support this option --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Tue Feb 4 19:50:50 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/056e9d482d8b5cb9d5304a7d
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Default GNUmake to Vista/IE7 as well
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Deucе@1:103/705 to Git commit to main/sbbs/master on Tue Feb 4 20:58:51 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/bc44e1cb87ce70db40d49c5c
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Actually, bump Gmake builds to Windows 7.

    Vista ended support before XP did, and it doesn't seem to show up
    on any usage lists (while XP still has 0.27% of all Windows systems...
    which are 25.46% of systems on the internet)

    https://gs.statcounter.com/os-market-share
    --- SBBSecho 3.23-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)