[vlc-commits] [Git][videolan/vlc][master] netbsd: add initial support

Felix Paul Kühne (@fkuehne) gitlab at videolan.org
Sun Mar 16 14:46:29 UTC 2025



Felix Paul Kühne pushed to branch master at VideoLAN / VLC


Commits:
1ba97cbe by Brad Smith at 2025-03-16T14:31:38+00:00
netbsd: add initial support

- thread id
- thread naming

- - - - -


4 changed files:

- configure.ac
- src/Makefile.am
- src/meson.build
- + src/netbsd/thread.c


Changes:

=====================================
configure.ac
=====================================
@@ -494,6 +494,7 @@ AS_IF([test "${SYS}" = "mingw32"],[
 ])
 
 AM_CONDITIONAL([HAVE_FREEBSD], [test "${SYS}" = "freebsd"])
+AM_CONDITIONAL([HAVE_NETBSD],  [test "${SYS}" = "netbsd"])
 AM_CONDITIONAL([HAVE_OPENBSD], [test "${SYS}" = "openbsd"])
 AM_CONDITIONAL([HAVE_LINUX],   [test "${SYS}" = "linux"])
 AM_CONDITIONAL([HAVE_ANDROID], [test "${VENDOR}" = "android"])


=====================================
src/Makefile.am
=====================================
@@ -494,6 +494,11 @@ libvlccore_la_SOURCES += \
 	freebsd/thread.c
 endif
 
+if HAVE_NETBSD
+libvlccore_la_SOURCES += \
+        netbsd/thread.c
+endif
+
 if HAVE_OPENBSD
 libvlccore_la_SOURCES += \
         openbsd/cpu.c \


=====================================
src/meson.build
=====================================
@@ -405,6 +405,12 @@ else
         ]
     endif
 
+    if host_system == 'netbsd'
+        libvlccore_sources += [
+            'netbsd/thread.c',
+        ]
+    endif
+
     if host_system == 'openbsd'
         libvlccore_sources += [
             'openbsd/cpu.c',


=====================================
src/netbsd/thread.c
=====================================
@@ -0,0 +1,45 @@
+/*****************************************************************************
+ * netbsd/thread.c: NetBSD specifics for threading
+ *****************************************************************************
+ * Copyright (C) 2020 Rémi Denis-Courmont
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation; either version 2.1 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public License
+ * along with this program; if not, write to the Free Software Foundation,
+ * Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
+ *****************************************************************************/
+
+#ifdef HAVE_CONFIG_H
+# include "config.h"
+#endif
+
+#include <pthread.h>
+#include <lwp.h>
+
+#include <vlc_common.h>
+#include <vlc_threads.h>
+#include <vlc_atomic.h>
+
+unsigned long vlc_thread_id(void)
+{
+     static _Thread_local lwpid_t tid = -1;
+
+     if (unlikely(tid == -1))
+         tid = _lwp_self();
+
+     return tid;
+}
+
+void (vlc_thread_set_name)(const char *name)
+{
+    pthread_setname_np(pthread_self(), "%s", (void *)name);
+}



View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/1ba97cbec5fb3fff28653bfff17c81a6357343c6

-- 
View it on GitLab: https://code.videolan.org/videolan/vlc/-/commit/1ba97cbec5fb3fff28653bfff17c81a6357343c6
You're receiving this email because of your account on code.videolan.org.


VideoLAN code repository instance


More information about the vlc-commits mailing list