Портирую c++ либу писвашуюся изначально для Windows. На данный момент существует полное компатибилити с C типами и также: port.h в котором в зависимости от ОС (win, mac, linux), делаются typdef для всяких DWORD, HANDLE и т.д. В своём XS делаю: #include "port.h"
Далее использую в XS: bool do_something(priority) DWORD priority в port.h имею для linux: typedef unsigned int DWORD; Но беда в том, что xsubpp не делает преобразований к базовым типам изначально и не проганяет код сквозь gcc -E и т.д. (ругается на отсутствие типа в typemap) Есть какие-то методики как такое разрулить (не хочется дулировать каждый тип уже предусмотренный в port.h либы, дублировать также в typemap), или же стоит делать так как сделано к примеру тут: https://metacpan.org/source/JDB/Win32-Pipe-0.024/Pipe.xs Т.е. без использование xsubpp'шных макросов (prototyping, OUTPUT, ...) И приведения типов к перловым - руками, без typemap. Спасибо. -- Varyanick I. Alex skype: cono.. [email protected]
_______________________________________________ Kiev-pm mailing list [email protected] http://mail.pm.org/mailman/listinfo/kiev-pm
