github.com/ebitengine/purego@v0.8.0-alpha.2.0.20240512170805-6cd12240d332/internal/fakecgo/libcgo.go (about) 1 // SPDX-License-Identifier: Apache-2.0 2 // SPDX-FileCopyrightText: 2022 The Ebitengine Authors 3 4 //go:build !cgo && (darwin || freebsd || linux) 5 6 package fakecgo 7 8 type ( 9 size_t uintptr 10 sigset_t [128]byte 11 pthread_attr_t [64]byte 12 pthread_t int 13 pthread_key_t uint64 14 ) 15 16 // for pthread_sigmask: 17 18 type sighow int32 19 20 const ( 21 SIG_BLOCK sighow = 0 22 SIG_UNBLOCK sighow = 1 23 SIG_SETMASK sighow = 2 24 ) 25 26 type G struct { 27 stacklo uintptr 28 stackhi uintptr 29 } 30 31 type ThreadStart struct { 32 g *G 33 tls *uintptr 34 fn uintptr 35 }