On 2/27/21 4:18 PM, Phil Stracchino wrote:
> 
> make[1]: Entering directory `/netstore/src/bacula-11.0.1/src/lib'
> Compiling bsockcore.c
> "bsockcore.c", line 88: Error: Badly formed expression.
> "bsockcore.c", line 98: Error: Badly formed expression.
> "bsockcore.c", line 101: Error: Badly formed expression.
> 3 Error(s) detected.
> make[1]: *** [bsockcore.lo] Error 1


Got a fix.  The problem is that typeof() is not standard C, and Solaris
compilers do not implement it.  __typeof() is available and can be used
instead.


--- src/lib/serial.h.orig       2021-02-27 17:29:59.288402523 -0500
+++ src/lib/serial.h    2021-02-27 17:29:19.585632589 -0500
@@ -77,12 +77,12 @@
                          expected length s.  */
 #define ser_check(x, s) ASSERT(ser_length(x) == ((uint32_t)(s)))
 #define unser_check(x, s) ASSERT(unser_length(x) == ((uint32_t)(s)))

 /*  ser_assign(ptr, len) -- assign current position to ptr and go len
bytes forward  */
-#define ser_assign(ptr, len) { ptr = (typeof(ptr))ser_ptr; ser_ptr +=
(len); }
-#define unser_assign(ptr, len) { ptr = (typeof(ptr))ser_ptr; ser_ptr +=
(len); }
+#define ser_assign(ptr, len) { ptr = (__typeof(ptr))ser_ptr; ser_ptr +=
(len); }
+#define unser_assign(ptr, len) { ptr = (__typeof(ptr))ser_ptr; ser_ptr
+= (len); }

 /*                          Serialisation                   */

 /*  8 bit signed integer  */
 #define ser_int8(x)     *ser_ptr++ = (x)



Also, the last line of src/filed/suspend.h does not have a newline,
and building 11.0.x in the Solaris Developer Studio requires that
CFLAGS/CPPFLAGS include -features=zla to allow declaring zero-length arrays.

With these, it builds on Solaris 11; with many warnings, but it does
build, and thus far the warnings have been harmless.



-- 
  Phil Stracchino
  Babylon Communications
  ph...@caerllewys.net
  p...@co.ordinate.org
  Landline: +1.603.293.8485
  Mobile:   +1.603.998.6958


_______________________________________________
Bacula-devel mailing list
Bacula-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-devel

Reply via email to