Commit Graph
316 Commits
Author SHA1 Message Date
nosoop d356d80537 Add functions for working with entity lumps (#1673) 2023-08-30 22:08:45 +02:00
peace-maker b27243c3ac Add -m flag to checkout-deps to avoid downloading MySQL (#1753)
If you just want to build an extension or SourceMod core and not the MySQL extension, don't download the large MySQL library archive.
2023-08-30 22:08:45 +02:00
Nick Hastings 6733c4182d Fix helpers module path lookup on newer Perl versions. 2023-08-30 22:08:45 +02:00
Nick Hastings 28ef59ada5 Missing ;s. 2023-08-30 22:08:45 +02:00
Nicholas Hastings 647e320b57 [Buildbot] Delete package after successful upload. (#1665)
* [Buildbot] Delete package after successful upload.

* Use autodie.

* ;
2023-08-30 22:08:45 +02:00
Asher Baker 53be0e0812 Upload libsourcepawn Breakpad symbols as well 2023-08-30 22:08:45 +02:00
Asher Baker 88dd142f5c Upload libsourcepawn debug symbols 2023-08-30 22:08:45 +02:00
Nick Hastings a06a903989 Make separate copy of makesig script for IDA 7.x. 2023-08-30 22:08:45 +02:00
Nick Hastings 656a9fa94f Use MM:S master for Windows builds (already doing for Linux/Mac). 2023-08-30 22:08:45 +02:00
David Anderson 907fa77381 Update bootstrap.pl 2023-08-30 22:08:44 +02:00
David Anderson c5c302dccc Use master for Metamod:Source builds. 2023-08-30 22:08:44 +02:00
David Anderson fec978afb4 Add support for hl2sdk-mock. 2023-08-30 22:08:44 +02:00
komashchenko f927455778 Removing old GeoIP.dat (#1533) 2021-07-17 11:32:02 +01:00
David Anderson 38eecd5ece Switch to python3 for ambuild. 2021-07-11 22:35:01 -07:00
peace-maker d192527707 Fix unpacking of GeoLite2 database (#1516)
Apparently you can't unpack and uncompress in one go in Windows and tar -C doesn't affect the input file.
2021-06-30 12:32:40 +01:00
b0563a493c Update GeoIP2 extension to new GeoLite2 .mmdb database format (#1245)
* Add support for Maxmind GeoIP2 database files (#913).

* Copy/paste error.

* Mark GeoipCode3 as deprecated.

* Fix build when compiling with AMBuild.

* Replace loose libmaxminddb files with submodule.

* Fix Linux build.

* One more hack for submodule.

* Actually fix Linux build.

* GeoIP2 extension to sourcemod

* Update basevotes

When a player leaves during a voteban, he will be banned anyway. Also added a cvar with a ban time setting.

* Update basevotes.sp

* Update AMBuilder

* ke::AString to std::string

* Update extension.cpp

* Update AMBuilder

* Added coordination natives

Added GeoipLatitude, GeoipLongitude, GeoipDistance natives.

* Create osdefs.h

* Update maxminddb_config.h

* Update extension.cpp

* Update extension.cpp

* Added automatic search for database file

* Fix automatic search for database file

* Update extension.cpp

* Update geoip.inc

* .gitmodules revert

* Update geoip.inc

* Update libmaxminddb to version 1.5.2

* Update extension.cpp

* Check language in the DB

* Removed langCount variable

* Determination of the client's language

* Update geoip.inc

* Update geoip.inc

* Update extension.cpp

* Update geoip.inc

* Update extension.cpp

* space instead of tab in .inc

* Update extension.cpp

* Update geoip.inc

* Optimizing length measurement region code

* Update package script to fetch the new GeoLite2 database

This package is the last CC-BY-SA licensed GeoLite2-City database extracted from https://src.fedoraproject.org/rpms/geolite2 from december 2019.

This doubles the download size for SM packages, but it's what we have to deal with atm :(

* Fix potentially returning uninitialized memory in GeoipRegionCode

If the lookup failed, we'd copy back whatever is on the stack in the ccode buffer.

Co-authored-by: Nick Hastings <[email protected]>
Co-authored-by: Headline <[email protected]>
Co-authored-by: Accelerator74 <[email protected]>
Co-authored-by: Peace-Maker <[email protected]>
2021-06-30 13:01:12 +02:00
peace-maker 845c20ad93 Start using Github Actions (#1488)
* Start using Github Actions

Build on windows and linux. Cannot build for macos,
since the builders only support xcode 10+ which dropped
x86 support.

* Build sourcepawn tooling as separate package

Upload build artifacts containing only spcomp and the includes.
This adds a new `--scripting-only` flag to configure.py which skips
everything and goes straight to building spcomp and packaging the
include folder with it.

* Only run the workflows for the master branch

* Split common operations into PackageHelpers file

Don't duplicate the code for packaging releases for the tooling-only packages. Instead use a common `PackageHelpers` class which provides the functionality common to both packages.

This replaces the explicit list of files to package with a directory scan, so we don't have to list them all.

The pgsql sql-init-scripts were missing from the release package before, so they were added here as well. Three scripts from the testsuite were missing from the explicit list (mapdisplayname, floats, findmap), so they're now included.

* Fix Python 2 compatibility

os.scandir is Python 3 only.
2021-05-09 01:46:08 +02:00
peace-maker 5bc48b2ab3 Prefer python3 over python(2) in checkout-deps (#1424)
* Prefer python3 over python(2) in checkout-deps

We require Python 3 and don't want to accidentally use Python 2 if both are available.

* Use python3 in travis build

* Install python3-pip package on travis trusty image

* Fix pip detection in checkout-deps.sh
2021-03-07 13:50:15 +01:00
Erik Minekus 90b68f095f Fix spcomp64 filename for Windows #1368 2020-10-19 19:02:20 +02:00
Headline db56b14637 loader: preserve binary path for amd64 (#1358) 2020-10-02 16:01:30 -07:00
David Anderson 6e2c5a66b3 Remove use of the Dep API.
This is going away.
2020-08-24 20:48:57 -07:00
David Anderson 0bed34e0c7 Add x64 to official Windows builds. 2020-08-20 23:17:21 -07:00
David Anderson f0d8a70b38 Fix tabs in BreakpadSymbols. 2020-08-19 00:43:12 -07:00
David Anderson 9acf2b5cda Use Python 3.8 on the Windows buildbot. 2020-08-19 00:39:54 -07:00
David Anderson d49b92603a Another BreakpadSymbols fix. 2020-08-19 00:12:40 -07:00
David Anderson aa01a22416 Fix BreakpadSymbols again. 2020-08-19 00:09:08 -07:00
David Anderson 50e43a9f98 Fix BreakpadSymbols. 2020-08-18 23:45:30 -07:00
David Anderson ed325c7208 Trigger a full rebuild. 2020-08-18 23:42:36 -07:00
David Anderson aac2c4a080 Trigger full reconfigures when requested. 2020-08-18 23:29:24 -07:00
David Anderson 785c6aa1cf Update to AMBuild 2.2.
This is a pretty big diff because SourceMod had lots of multi-arch
workarounds that can now go away. I've also changed 'x64' to 'x86_64' in
many places since this is how AMBuild normalizes it, and it's far too
late to pick the shorter string, so we might as well suck it up.

The --target-archs parameter has been replaced with --targets. It works
the same way.

The default behavior for SDK inclusion is now "present" instead of
"all" since this lowers the burden of storing many SDKs. Official builds
will still be made with --sdks=all.
2020-08-18 23:09:43 -07:00
peace-maker 510bd261f8 core: Add Insurgency support for amd64 Windows (#1295)
* Add basic Insurgency support on Windows x64

This allows SourceMod to load on x64 Insurgency. There are still a lot of variable truncation warnings that have to be dealt with.

* Fix 32bit builds

* Compile MySQL extension as well

The hack for __iob_func being removed from the core runtime, but required by the old mysql we're building against can be simplified a lot due to the `_ReturnAddress` intrinsic available since MSVC 2015.

* Don't include the offset we want to extract in the signature
2020-08-06 19:53:06 -07:00
WildCard65 9bbbf60268 Updated 'checkout-deps' to check for 'pip'/'pip3' prior to installing 'AMBuild' 2020-07-31 15:49:44 -07:00
Peace-Maker 37355f9c57 Remove cloning of Dota 2 SDK in CI
SourceMod doesn't support Source 1 Dota 2 anymore and neither Source 2. Speed up CI by only cloning the hl2sdks that are tested.

This adds a `-s sdk1,sdk2` parameter to the checkout-deps.sh script similar to the `-SDKs` option of the powershell script to select specific sdks to update instead of all.
2020-07-30 11:37:00 -07:00
Kyle Sanderson 353ced0e41 gamedata: align with core project values. (#1310)
* Rename blacklist.plugins.txt to blocklist.plugins.txt
* gamedata: adjust gamedata name.
* packagescript: adjust filename.
2020-07-14 18:40:28 -07:00
Fyren 75fa198321 Change bootstrap.pl and startbuild.pl to also take CXX. (#1280) 2020-05-27 21:18:49 -04:00
David Anderson c9f574c27b Fix mac build. 2020-05-20 22:50:41 -07:00
David Anderson ff018a9a5d Improve Travis coverage.
Our official builds use clang-3.4 (for macOS) and clang-3.8 for Linux.
Linux uses libstdc++-4.9. Make sure these two compilers are being tested
and that libstdc++-4.9 is being used for STL.

Add a macOS builder to get coverage there. This will use a newer
clang than we actually use, but as opposed to the linux builder will
test the platform-specific bits.

Finally, use the latest GCC and clang versions from a bionic image, so
we have some coverage of a popular distribution.
2020-05-13 19:09:20 -07:00
peace-maker bc89e54f6d NPOTB: Always use hl2sdk-proxy-repo in checkout-deps (#1236) 2020-05-08 15:12:21 -07:00
JoinedSenses a1436cd205 Add windows supported SDKs to powershell checkout-deps (#1116)
.sh version has this bit:

```
if [ $ismac -eq 0 ]; then
  # Add these SDKs for Windows or Linux
  sdks+=( orangebox blade episode1 bms )

  # Add more SDKs for Windows only
  if [ $iswin -eq 1 ]; then
    sdks+=( darkm swarm bgt eye contagion )
  fi
fi
```

Added these to the SDK list.
2019-11-04 12:34:56 +00:00
Michael Flaherty dd81d7c78f Incorperate Licensing Into Project Tree (#961) 2019-04-12 12:10:13 -07:00
Asher Baker c501c837d0 Ignore SM site certificate when downloading GeoIP
Build servers don't have a root for it, and the address is internal
2019-01-19 12:34:23 +00:00
Asher Baker 590f71436f Get GeoIP data from SM site for now 2019-01-19 12:18:36 +00:00
Nick Hastings 53c63def07 Use env vars to find MySQL src on Linux, macOS. 2018-06-07 20:40:14 -04:00
Nicholas Hastings 4637cf9221 Use MySQL 5.5 for MySQL extension. (#786) 2018-03-20 17:12:30 -04:00
Nicholas Hastings 29b1926432 A couple of fixups to last commit (NPOTB). 2017-12-29 04:55:56 -08:00
Nicholas Hastings e0a154faa0 Add TF2 NextBot symbol data from Pelipoka to GDC (NPOTB). 2017-12-29 04:38:47 -08:00
Scott Ehlert 870e118150 Fix BreakpadSymbols script for 64-bit builds. 2017-12-20 02:07:30 -06:00
Scott Ehlert ce1a4dcac0 64-bit support for CSGO on Linux and macOS (#705) 2017-12-20 01:56:23 -06:00
Asher Baker c33bf330a0 Add doi, remove dota 2017-12-04 21:47:00 +00:00
Scott Ehlert 82e6d00cea Fix build. 2017-10-02 07:40:58 -05:00