Index: head/audio/moony-lv2/files/patch-CMakeLists.txt =================================================================== --- head/audio/moony-lv2/files/patch-CMakeLists.txt (revision 470361) +++ head/audio/moony-lv2/files/patch-CMakeLists.txt (revision 470362) @@ -1,39 +1,57 @@ --- CMakeLists.txt.orig 2017-05-16 21:46:21 UTC +++ CMakeLists.txt -@@ -350,21 +350,21 @@ if(BUILD_TESTING) +@@ -33,6 +33,17 @@ set(CMAKE_C_FLAGS "-Wshadow -Wimplicit-f + if(CMAKE_SYSTEM_NAME STREQUAL "Linux") + set(CMAKE_MODULE_LINKER_FLAGS "-Wl,-z,defs ${CMAKE_MODULE_LINKER_FLAGS}") + set(CMAKE_MODULE_LINKER_FLAGS "-Wl,-z,nodelete ${CMAKE_MODULE_LINKER_FLAGS}") ++elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") ++ # see https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221341 ++ include(CheckFunctionExists) ++ check_function_exists(clog FreeBSD_CLOG_EXISTS) ++ check_function_exists(cpow FreeBSD_CPOW_EXISTS) ++ if (FreeBSD_CLOG_EXISTS) ++ set(CMAKE_C_FLAGS "-DFreeBSD_CLOG_EXISTS ${CMAKE_C_FLAGS}") ++ endif() ++ if (FreeBSD_CPOW_EXISTS) ++ set(CMAKE_C_FLAGS "-DFreeBSD_CPOW_EXISTS ${CMAKE_C_FLAGS}") ++ endif() + elseif(WIN32) + set(CMAKE_C_FLAGS "-mstackrealign ${CMAKE_C_FLAGS}") + endif() +@@ -350,21 +361,21 @@ if(BUILD_TESTING) endif() set_target_properties(moony_test PROPERTIES INTERPROCEDURAL_OPTIMIZATION true) # -flto target_link_libraries(moony_test ${LIBS}) - - add_custom_command( - OUTPUT ${PROJECT_BINARY_DIR}/manual.html - COMMAND ${WINE} ${QEMU} ${PROJECT_BINARY_DIR}/moony_test - ${PROJECT_SOURCE_DIR}/manual/hilight.lua - ">" - ${PROJECT_BINARY_DIR}/manual.html - DEPENDS - moony_test - ${PROJECT_SOURCE_DIR}/plugin/lexer.lua - ${PROJECT_SOURCE_DIR}/plugin/moony.lua - ${PROJECT_SOURCE_DIR}/manual/hilight.lua - ${PROJECT_SOURCE_DIR}/manual/manual.html.in) - add_custom_target(moony_manual ALL DEPENDS ${PROJECT_BINARY_DIR}/manual.html) - install(FILES ${PROJECT_BINARY_DIR}/manual.html DESTINATION ${PLUGIN_DEST}) +# +# add_custom_command( +# OUTPUT ${PROJECT_BINARY_DIR}/manual.html +# COMMAND ${WINE} ${QEMU} ${PROJECT_BINARY_DIR}/moony_test +# ${PROJECT_SOURCE_DIR}/manual/hilight.lua +# ">" +# ${PROJECT_BINARY_DIR}/manual.html +# DEPENDS +# moony_test +# ${PROJECT_SOURCE_DIR}/plugin/lexer.lua +# ${PROJECT_SOURCE_DIR}/plugin/moony.lua +# ${PROJECT_SOURCE_DIR}/manual/hilight.lua +# ${PROJECT_SOURCE_DIR}/manual/manual.html.in) +# add_custom_target(moony_manual ALL DEPENDS ${PROJECT_BINARY_DIR}/manual.html) +# install(FILES ${PROJECT_BINARY_DIR}/manual.html DESTINATION ${PLUGIN_DEST}) add_test(NAME API-Test COMMAND ${WINE} ${QEMU} moony_test ${PROJECT_SOURCE_DIR}/test/moony_test.lua) add_test(NAME Overflow-Test COMMAND ${WINE} ${QEMU} moony_test ${PROJECT_SOURCE_DIR}/test/moony_overflow.lua 0) Index: head/audio/moony-lv2/files/patch-lcomplex_lcomplex.c =================================================================== --- head/audio/moony-lv2/files/patch-lcomplex_lcomplex.c (revision 470361) +++ head/audio/moony-lv2/files/patch-lcomplex_lcomplex.c (revision 470362) @@ -1,43 +1,47 @@ --- lcomplex/lcomplex.c.orig 2017-05-16 21:46:21 UTC +++ lcomplex/lcomplex.c @@ -7,6 +7,7 @@ */ #include +#include #include "lua.h" #include "lauxlib.h" -@@ -78,6 +79,32 @@ static int Ltostring(lua_State *L) /** +@@ -78,6 +79,36 @@ static int Ltostring(lua_State *L) /** return 1; } ++#if !defined(FreeBSD_CLOG_EXISTS) +// Missing C99 functions clog and cpow: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=221341 +static Complex clog(Complex z) {return log(cabs(z)) + I * carg(z);} ++#endif ++#if !defined(FreeBSD_CPOW_EXISTS) +// from https://github.com/eblot/newlib/blob/master/newlib/libm/complex/cpow.c +static Complex +cpow(Complex a, Complex z) +{ + double complex w; + double x, y, r, theta, absa, arga; + + x = creal(z); + y = cimag(z); + absa = cabs(a); + if (absa == 0.0) { + return (0.0 + 0.0 * I); + } + arga = carg(a); + r = pow(absa, x); + theta = x * arga; + if (y != 0.0) { + r = r * exp(-y * arga); + theta = theta + y * log(absa); + } + w = r * cos(theta) + (r * sin(theta)) * I; + return w; +} ++#endif + #define A(f,e) static int L##f(lua_State *L) { return pushcomplex(L,e); } #define B(f) A(f,l_mathop(c##f)(Z(1),Z(2))) #define F(f) A(f,l_mathop(c##f)(Z(1)))