mirror of
https://git.FreeBSD.org/ports.git
synced 2024-10-19 19:59:43 +00:00
Add compatibility fixes for Erlang R15.
This commit is contained in:
parent
44adb21c2d
commit
9d721e1910
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=302570
@ -7,7 +7,7 @@
|
||||
|
||||
PORTNAME= wings
|
||||
PORTVERSION= 1.3.1
|
||||
PORTREVISION= 1
|
||||
PORTREVISION= 2
|
||||
CATEGORIES= graphics
|
||||
MASTER_SITES= SF
|
||||
DIST_SUBDIR= erlang
|
||||
|
@ -0,0 +1,63 @@
|
||||
|
||||
$FreeBSD$
|
||||
|
||||
--- plugins_src/accel/perlin_noise_drv.c.orig
|
||||
+++ plugins_src/accel/perlin_noise_drv.c
|
||||
@@ -22,6 +22,11 @@
|
||||
#include <math.h>
|
||||
#include <string.h>
|
||||
|
||||
+#if ERL_DRV_EXTENDED_MAJOR_VERSION < 2
|
||||
+typedef int ErlDrvSizeT;
|
||||
+typedef int ErlDrvSSizeT;
|
||||
+#endif
|
||||
+
|
||||
#define PNOISE3 3
|
||||
#define SNOISE1 4
|
||||
#define SNOISE2 5
|
||||
@@ -57,9 +62,9 @@
|
||||
*/
|
||||
static ErlDrvData perlin_noise_start(ErlDrvPort port, char *buff);
|
||||
static void perlin_noise_stop(ErlDrvData handle);
|
||||
-static int control(ErlDrvData handle, unsigned int command,
|
||||
- char* buff, int count,
|
||||
- char** res, int res_size);
|
||||
+static ErlDrvSSizeT control(ErlDrvData handle, unsigned int command,
|
||||
+ char* buff, ErlDrvSizeT count,
|
||||
+ char** res, ErlDrvSizeT res_size);
|
||||
|
||||
/*
|
||||
* Internal routines
|
||||
@@ -82,7 +87,18 @@
|
||||
NULL, /* void * that is not used (BC) */
|
||||
control, /* F_PTR control, port_control callback */
|
||||
NULL, /* F_PTR timeout, driver_set_timer callback */
|
||||
- NULL /* F_PTR outputv, reserved */
|
||||
+ NULL, /* F_PTR outputv, reserved */
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ ERL_DRV_EXTENDED_MARKER,
|
||||
+ ERL_DRV_EXTENDED_MAJOR_VERSION,
|
||||
+ ERL_DRV_EXTENDED_MINOR_VERSION,
|
||||
+ 0,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -114,9 +130,9 @@
|
||||
|
||||
}
|
||||
|
||||
-static int control(ErlDrvData handle, unsigned int command,
|
||||
- char* buff, int count,
|
||||
- char** res, int res_size)
|
||||
+static ErlDrvSSizeT control(ErlDrvData handle, unsigned int command,
|
||||
+ char* buff, ErlDrvSizeT count,
|
||||
+ char** res, ErlDrvSizeT res_size)
|
||||
{
|
||||
ErlDrvBinary* bin;
|
||||
|
@ -0,0 +1,67 @@
|
||||
|
||||
$FreeBSD$
|
||||
|
||||
--- plugins_src/accel/wings_pick_drv.c.orig
|
||||
+++ plugins_src/accel/wings_pick_drv.c
|
||||
@@ -20,14 +20,19 @@
|
||||
#endif
|
||||
#include <string.h>
|
||||
|
||||
+#if ERL_DRV_EXTENDED_MAJOR_VERSION < 2
|
||||
+typedef int ErlDrvSizeT;
|
||||
+typedef int ErlDrvSSizeT;
|
||||
+#endif
|
||||
+
|
||||
/*
|
||||
* Interface routines.
|
||||
*/
|
||||
static ErlDrvData wings_file_start(ErlDrvPort port, char *buff);
|
||||
static void wings_file_stop(ErlDrvData handle);
|
||||
-static int control(ErlDrvData handle, unsigned int command,
|
||||
- char* buff, int count,
|
||||
- char** res, int res_size);
|
||||
+static ErlDrvSSizeT control(ErlDrvData handle, unsigned int command,
|
||||
+ char* buff, ErlDrvSizeT count,
|
||||
+ char** res, ErlDrvSizeT res_size);
|
||||
static void outputv(ErlDrvData drv_data, ErlIOVec* ev);
|
||||
|
||||
/*
|
||||
@@ -47,7 +52,18 @@
|
||||
NULL, /* void * that is not used (BC) */
|
||||
control, /* F_PTR control, port_control callback */
|
||||
NULL, /* F_PTR timeout, driver_set_timer callback */
|
||||
- outputv /* F_PTR outputv, reserved */
|
||||
+ outputv, /* F_PTR outputv, reserved */
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ ERL_DRV_EXTENDED_MARKER,
|
||||
+ ERL_DRV_EXTENDED_MAJOR_VERSION,
|
||||
+ ERL_DRV_EXTENDED_MINOR_VERSION,
|
||||
+ 0,
|
||||
+ NULL,
|
||||
+ NULL,
|
||||
+ NULL
|
||||
};
|
||||
|
||||
struct vertex_struct {
|
||||
@@ -107,14 +123,14 @@
|
||||
* Handle commands.
|
||||
*/
|
||||
|
||||
-static int
|
||||
+static ErlDrvSSizeT
|
||||
control(ErlDrvData handle, unsigned int command,
|
||||
- char* buf, int count,
|
||||
- char** res, int res_size)
|
||||
+ char* buf, ErlDrvSizeT count,
|
||||
+ char** res, ErlDrvSizeT res_size)
|
||||
{
|
||||
switch (command) {
|
||||
case 0: { /* Define matrix */
|
||||
- memcpy((void *) m, (void *) buf, count);
|
||||
+ memcpy((void *) m, (void *) buf, (size_t) count);
|
||||
#if 0
|
||||
{
|
||||
int i, j;
|
Loading…
Reference in New Issue
Block a user