• src/build/Common.gmake

    From deuce@VERT to CVS commit on Wednesday, April 02, 2014 23:49:28
    src/build Common.gmake 1.91 1.92
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv21469

    Modified Files:
    Common.gmake
    Log Message:
    Now that Microsoft has moved into the 90s, we can use C99!

    Yay!




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Wednesday, April 02, 2014 23:54:13
    src/build Common.gmake 1.92 1.93
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv21574

    Modified Files:
    Common.gmake
    Log Message:
    We abuse CFLAGS by passing it to ${CXX}. Change the implicit rules instead.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Thursday, April 03, 2014 17:41:40
    src/build Common.gmake 1.93 1.94
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv17830

    Modified Files:
    Common.gmake
    Log Message:
    When using glibc with the --std=c99 parameter to gcc, it appears that all APIs except for the ISO C ones are disabled. Since we use POSIX, BSD, and SYSV APIs, define _GNU_SOURCE which re-enables them all.

    Only for Linux so far.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Thursday, April 03, 2014 17:56:51
    src/build Common.gmake 1.94 1.95
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv25230

    Modified Files:
    Common.gmake
    Log Message:
    Actualy, use the feature macros for the specific features we use...
    POSIX for stdio and more.
    BSD because BSD is awesome.
    X/Open for timezone.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Sunday, April 27, 2014 21:58:26
    src/build Common.gmake 1.95 1.96
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv18719

    Modified Files:
    Common.gmake
    Log Message:
    Undefine __STRICT_ANSI__ which gcc defines when using -std=c99 and the mingw headers are rife with. Re-enables cross-building with mingw32 (at least for SyncTERM).



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Friday, February 06, 2015 15:58:56
    src/build Common.gmake 1.97 1.98
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv28889

    Modified Files:
    Common.gmake
    Log Message:
    Remove the DONT_CLOBBER_CC option, don't clobber CC, and detect the name
    of the compiler (icc, gcc, and clang supported).




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Saturday, February 07, 2015 00:28:40
    src/build Common.gmake 1.98 1.99
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv4451

    Modified Files:
    Common.gmake
    Log Message:
    Add missing space (fixes gcc detection)




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Friday, April 17, 2015 17:39:56
    src/build Common.gmake 1.99 1.100
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv10076/build

    Modified Files:
    Common.gmake
    Log Message:
    Add support for SPEED_MACROS_ONLY which defines that termios speeds must
    be set and read using the POSIX macros and related (currently Linux-only).




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Friday, April 17, 2015 18:44:24
    src/build Common.gmake 1.100 1.101
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv10813

    Modified Files:
    Common.gmake
    Log Message:
    Define the new _DEFAULT_SOURCE macro for glibc >= 2.20

    This will also enable SVID stuff, but that appears to be unavoidable.

    See the following URIs:
    https://lwn.net/Articles/590381/ https://sourceware.org/glibc/wiki/Release/2.20#Deprecation_of__BSD_SOURCE_and__SVID_SOURCE_feature_macros
    http://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html#index-_005fDEFAULT_005fSOURCE




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Tuesday, May 12, 2015 12:25:58
    src/build Common.gmake 1.101 1.102
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv21638

    Modified Files:
    Common.gmake
    Log Message:
    When using clang, override CXX to 'c++' if CC is 'cc' and 'clang++' if 'cc'
    is 'clang'



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Friday, August 21, 2015 22:29:09
    src/build Common.gmake 1.102 1.103
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv26292

    Modified Files:
    Common.gmake
    Log Message:
    When using clang, disable "illegal character encoding in character literal" warnings when a string or character literal contains invalid UTF-8.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From deuce@VERT to CVS commit on Wednesday, September 02, 2015 01:04:45
    src/build Common.gmake 1.103 1.104
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv10956

    Modified Files:
    Common.gmake
    Log Message:
    Set MSVCRT_VERSION=0x0800 which may or may not prevent SyncTERM from running
    on Windows XP now. At the very least, it will now require MSVCR80.DLL.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ telnet://vert.synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, December 13, 2017 13:16:23
    src/build Common.gmake 1.104 1.105
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv30565

    Modified Files:
    Common.gmake
    Log Message:
    Set SBBSEXEC (required for install and symlinks targets), if unset but
    SBBSCTRL is set. Also changed the library versioning from 3.16 to 3.17.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, February 02, 2018 23:31:18
    src/build Common.gmake 1.105 1.106
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv28174

    Modified Files:
    Common.gmake
    Log Message:
    Just assume macOS has inttypes.h




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Thursday, March 08, 2018 19:11:06
    src/build Common.gmake 1.106 1.107
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/home/rswindell/sbbs/src/build

    Modified Files:
    Common.gmake
    Log Message:
    Define _GNU_SOURCE when targeting linux. This resolves a lot of warnings
    about undeclared functions (vasprintf and pthread_setname_np) when building sbbs3.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Wednesday, May 29, 2019 23:48:28
    src/build Common.gmake 1.107 1.108
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv14640

    Modified Files:
    Common.gmake
    Log Message:
    Target Mac OS X 10.5 or later.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, June 28, 2019 15:49:49
    src/build Common.gmake 1.108 1.109
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/home/rswindell/sbbs/src/build

    Modified Files:
    Common.gmake
    Log Message:
    Support new "encode" library.
    Prepare for upcoming "hash" library.



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, April 24, 2020 20:51:35
    src/build Common.gmake 1.109 1.110
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv25886

    Modified Files:
    Common.gmake
    Log Message:
    Make the new default minimum macOS version 10.6




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From deuce@VERT to CVS commit on Friday, April 24, 2020 22:42:23
    src/build Common.gmake 1.110 1.111
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/tmp/cvs-serv8222

    Modified Files:
    Common.gmake
    Log Message:
    Moar SDL_AUDIO stuffs.




    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From rswindell@VERT to CVS commit on Friday, May 01, 2020 18:30:46
    src/build Common.gmake 1.111 1.112
    Update of /cvsroot/sbbs/src/build
    In directory cvs:/home/rswindell/sbbs/src/build

    Modified Files:
    Common.gmake
    Log Message:
    Remove D_XOPEN_SOURCE=700 which is causing warnings for every src/sbbs3/*
    about redefining _XOPEN_SOURCE on every command-line (because pkt-config
    is also defining it, to 600).



    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to sbbs/master on Wednesday, October 21, 2020 23:52:43
    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 locks

    The Linux lock() implementation in xpdev/filewrap.c requires that _FILE_OFFSET_BITS is set to 64 or else OFD (sane) locks are not
    used on Linux, defaulting back to the crazy per-process file region
    locking of Linux of old. This was done in this commit: http://cvs.synchro.net/commitlog.ssjs?99999#39639
    because:
    https://patchwork.kernel.org/patch/9289177/

    but on 64-bit Linux, large file support is assumed and you don't
    actually need to define _FILE_OFFFSET_BITS, we're peforming this
    check for 32-bit Linuxes. Perhaps a check to see if sizeof(off_t)
    == 8 would have been better. However, this change enables OFD
    Locks for *all* flavors of Linux (not just 64-bit) - so that's
    better.

    Why do we care? Because using region locks on the same file in
    a multi-threaded program doesn't really work right on Linux without
    using OFD Locks. I saw this problem with receiving multiple
    simultaneous emails in the mailserver and getting smb_locksmbhdr() errors/failures when trying to save the message data or headers
    of the one or more messages every time GitLab would send email
    out to those whoe have opted-in to received email notifications
    upon gitlab.synchro.net activity.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Monday, March 08, 2021 11:10:35
    https://gitlab.synchro.net/main/sbbs/-/commit/4c280dc6e91679cfeb9496a0
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add -std=c++11 for .cpp builds

    Hope to address error reported by rjwboys via IRC when using
    gcc 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:2
    error #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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, March 31, 2021 16:53:27
    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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Sunday, March 20, 2022 16:24:39
    https://gitlab.synchro.net/main/sbbs/-/commit/2951994bca38d54de846bcb2
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Linux needs strlcpy() defined in xpdev

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell@VERT to Git commit to main/sbbs/master on Friday, June 10, 2022 22:54:03
    https://gitlab.synchro.net/main/sbbs/-/commit/bfd364c8cf904c6e4f5cacf2
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Disable "unused-result" warning in release builds

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Thursday, April 13, 2023 11:15:39
    https://gitlab.synchro.net/main/sbbs/-/commit/218a0ca5056240ef30757abd
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Allow overriding MIN_MAC_OSX_VERSION

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tuesday, May 09, 2023 21:33:11
    https://gitlab.synchro.net/main/sbbs/-/commit/2e1649cb7f86b9479b4a6446
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Build .html files for Emscripten

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Monday, June 05, 2023 17:07:54
    https://gitlab.synchro.net/main/sbbs/-/commit/6be51c0f2293e8e35fbd3fc6
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add FORTIFY and SANITIZE options for DEBUG builds

    SANITIZE 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 option enabled persistently.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Monday, June 05, 2023 17:35:09
    https://gitlab.synchro.net/main/sbbs/-/commit/84dd1bc7ce3835d8c195f658
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Document the new FORTIFY and SANITIZE options

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on ChromeOS)@VERT to Git commit to main/sbbs/master on Sunday, June 18, 2023 14:07:47
    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 UBSan

    this is recommended to reliably display the call stack when using the print_stacktrace option.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Sunday, December 31, 2023 02:54:53
    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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Sunday, December 31, 2023 07:04:00
    https://gitlab.synchro.net/main/sbbs/-/commit/ee8414367187c12c7f428219
    Modified Files:
    src/build/Common.gmake
    Log Message:
    clang needs -c for .s files without main

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Friday, January 26, 2024 11:16:17
    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

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, February 07, 2024 10:11:46
    https://gitlab.synchro.net/main/sbbs/-/commit/eb4e039b3e86d4d258378efd
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Disable -fpic for Win32

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, February 07, 2024 10:47:17
    https://gitlab.synchro.net/main/sbbs/-/commit/a3b7bd388024f90605369cc4
    Modified Files:
    src/build/Common.gmake
    Log Message:
    win32, not Win32

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, February 07, 2024 13:23:27
    https://gitlab.synchro.net/main/sbbs/-/commit/1fe860f68366353c4e597149
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Add WALL option.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, February 07, 2024 20:37:32
    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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Wednesday, February 07, 2024 23:56:15
    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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thursday, February 08, 2024 00:45:01
    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)

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Thursday, February 08, 2024 01:24:22
    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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tuesday, February 20, 2024 15:11:23
    https://gitlab.synchro.net/main/sbbs/-/commit/31076f888d7c52b9568b7c91
    Modified Files:
    src/build/Common.gmake
    Log Message:
    Fix mingw32 some more.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Saturday, February 24, 2024 11:42:08
    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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tuesday, March 12, 2024 14:12:34
    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...

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Tuesday, March 12, 2024 14:34:13
    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.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Deuc¨@VERT to Git commit to main/sbbs/master on Sunday, March 17, 2024 00:13:16
    https://gitlab.synchro.net/main/sbbs/-/commit/2a51c73553d35b207f1062b4
    Modified Files:
    src/build/Common.gmake
    Log Message:
    We need macOS 10.9 for std::atomic

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net