Kamailio 5 did not compile on solaris 11 anymore due to a missing ast/endian.h included from app_jsdt/duk_config.h. The solution is:
--- kamailio-5.0.1~/src/modules/app_jsdt/duk_config.h 2017-04-05 15:32:38.000000000 +0000 +++ kamailio-5.0.1/src/modules/app_jsdt/duk_config.h 2017-04-15 09:27:14.335213048 +0000 @@ -607,7 +607,7 @@ #define DUK_USE_DATE_FMT_STRFTIME
#include <sys/types.h> -#include <ast/endian.h> +#include <sys/byteorder.h> #include <sys/param.h> #include <sys/time.h> #include <time.h>
The file `duk_config.h` is imported from Duktape project as it is and I would try to avoid diverting from the official version:
We had tuktape v2.0.0 and I just updated to v2.0.2. Can you try with kamailio master branch and see if all ok? I noticed some updates in the code regarding to this and may have it addressed. If all ok, I will backport.
If not, then I would suggest to also report to ducktape project so there it gets fixed as well.
Any chance to try with v2.0.2 as mentioned above?
Just tried it, same problem. Will need to report it upstream! Not sure whether you need to fix it in your source tree, as solaris is becoming less and less common...
I also checked whether ast/endian.h might be included in a package which I just happen to not have installed, but no, there is no ast/endian.h in the whole of Solaris 11.3. So the #ifdef DUK_F_OLD_SOLARIS must relate to something pre-historic, and the #else to something medieval ;-)
Anyway, thanks for kamailio!
Had any time to push to duktape? I would like to import it inside kamailio if there is a fix there.
Closed #1072.
Closing this one, I aso upgraded to duktape 2.1.0 meanwhile.