Opened 4 years ago

Closed 4 years ago

Last modified 4 years ago

#1536 closed patch (fixed)

FTBFS MacOSX

Reported by: wish Owned by: dlove
Priority: normal Milestone:
Component: sge Version: 8.1.8
Severity: minor Keywords:
Cc:

Description

Fails to compile with either gcc or clang:
gcc -DSGE_ARCH_STRING=\"darwin-x64\" -O3 -flat_namespace -arch x86_64 -Wall -Wno-format -Wstrict-prototypes -DFD_SETSIZE=8192 -DDARWIN -DDARWIN10 -DDARWIN_X64 -DGETHOSTBYNAME -DGETHOSTBYADDR_M -DTARGET_64BIT -std=gnu99 -DSGE_PQS_API -DSPOOLING_dynamic -DSECURE -DHAVE_HWLOC=0 -DNO_JNI -DCOMPILE_DC -DSGE_NO_USERMAPPING -I../common -I../libs -I../libs/uti -I../libs/juti -I../libs/gdi -I../libs/japi -I../libs/sgeobj -I../libs/cull -I../libs/comm -I../libs/comm/lists -I../libs/sched -I../libs/evc -I../libs/evm -I../libs/mir -I../daemons/common -I../daemons/qmaster -I../daemons/execd -I../clients/common -I. -dynamic -fno-common -c ../libs/sgeobj/sge_ulong.c
clang: warning: argument unused during compilation: '-flat_namespace'
In file included from ../libs/sgeobj/sge_ulong.c:46:
In file included from ../libs/uti/sge_rmon.h:39:
In file included from ../libs/uti/rmon.h:38:
../libs/uti/sge_rmon_monitoring_level.h:69:4: error: unknown type name 'u_long'; did you mean 'long'?

u_long ml[N_LAYER];
~
long

../libs/uti/sge_rmon_monitoring_level.h:75:1: error: unknown type name 'u_long'; did you mean 'long'?
u_long rmon_mlgetl(monitoring_level *, int);
~
long
../libs/uti/sge_rmon_monitoring_level.h:76:45: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
void rmon_mlputl(monitoring_level *, int, u_long);

~

In file included from ../libs/sgeobj/sge_ulong.c:46:
In file included from ../libs/uti/sge_rmon.h:39:
In file included from ../libs/uti/rmon.h:40:
In file included from ../libs/comm/cl_commlib.h:41:
In file included from ../libs/comm/cl_communication.h:39:
In file included from ../libs/comm/cl_connection_list.h:36:
In file included from ../libs/uti/sge_htable.h:42:
../libs/uti/sge_dstring.h:80:53: error: unknown type name 'u_int'
const char* sge_dstring_append_mailopt(dstring *sb, u_long32 mailopt);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:46:
In file included from ../libs/uti/sge_rmon.h:39:
In file included from ../libs/uti/rmon.h:40:
In file included from ../libs/comm/cl_commlib.h:41:
In file included from ../libs/comm/cl_communication.h:39:
In file included from ../libs/comm/cl_connection_list.h:36:
In file included from ../libs/uti/sge_htable.h:42:
../libs/uti/sge_dstring.h:100:57: error: unknown type name 'u_int'
const char *sge_dstring_ulong_to_binstring(dstring *sb, u_long32 number);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:47:
../libs/uti/sge_log.h:43:30: error: a parameter list without types is only allowed in a function definition
void log_state_set_log_level(u_long32);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:47:
../libs/uti/sge_log.h:51:1: error: unknown type name 'u_int'
u_long32 log_state_get_log_level(void);

../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:48:
../libs/uti/sge_time.h:46:1: error: unknown type name 'u_int'
u_long32 sge_get_gmt(void);

../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:48:
../libs/uti/sge_time.h:50:25: error: unknown type name 'u_int'
const char *sge_ctime32(u_long32 *, dstring *buffer);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:48:
../libs/uti/sge_time.h:58:1: error: unknown type name 'u_int'
u_long32 duration_add_offset(u_long32 duration, u_long32 offset);

../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:48:
../libs/uti/sge_time.h:58:30: error: unknown type name 'u_int'
u_long32 duration_add_offset(u_long32 duration, u_long32 offset);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:48:
../libs/uti/sge_time.h:58:49: error: unknown type name 'u_int'
u_long32 duration_add_offset(u_long32 duration, u_long32 offset);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
In file included from ../libs/cull/cull_list.h:43:
../libs/cull/pack.h:112:61: error: unknown type name 'u_int'
init_packbuffer_from_buffer(sge_pack_buffer *pb, char *buf, u_long32 buflen);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
In file included from ../libs/cull/cull_list.h:43:
../libs/cull/pack.h:124:52: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
int repackint(register sge_pack_buffer *, register u_long32);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
In file included from ../libs/cull/cull_list.h:43:
../libs/cull/pack.h:125:50: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
int packint(register sge_pack_buffer *, register u_long32);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
In file included from ../libs/cull/cull_list.h:43:
../libs/cull/pack.h:126:52: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
int packint64(register sge_pack_buffer *, register u_long64);


../common/basis_types.h:112:20: note: expanded from macro 'u_long64'
# define u_long64 u_long


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
In file included from ../libs/cull/cull_list.h:43:
../libs/cull/pack.h:129:46: warning: type specifier missing, defaults to 'int' [-Wimplicit-int]
int packbuf(sge_pack_buffer *, const char *, u_long32);

~

../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
In file included from ../libs/cull/cull_list.h:43:
../libs/cull/pack.h:132:52: error: unknown type name 'u_int'
int unpackint(register sge_pack_buffer *, register u_long32 *);


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
In file included from ../libs/cull/cull_list.h:43:
../libs/cull/pack.h:133:54: error: unknown type name 'u_long'; did you mean 'long'?
int unpackint64(register sge_pack_buffer *, register u_long64 *);

~
long

../common/basis_types.h:112:20: note: expanded from macro 'u_long64'
# define u_long64 u_long


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
../libs/cull/cull_list.h:65:9: error: unknown type name 'u_int'
typedef u_long32 lUlong;


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
In file included from ../libs/uti/sge_parse_num_par.h:41:
../libs/cull/cull_list.h:66:9: error: unknown type name 'u_long'; did you mean 'long'?
typedef u_long64 lUlong64;

~
long

../common/basis_types.h:112:20: note: expanded from macro 'u_long64'
# define u_long64 u_long


In file included from ../libs/sgeobj/sge_ulong.c:51:
../libs/uti/sge_parse_num_par.h:54:36: error: unknown type name 'u_int'
int parse_ulong_val(double *dvalp, u_long32 *uvalp, u_long32 type,


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
../libs/uti/sge_parse_num_par.h:54:53: error: unknown type name 'u_int'
int parse_ulong_val(double *dvalp, u_long32 *uvalp, u_long32 type,


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


In file included from ../libs/sgeobj/sge_ulong.c:51:
../libs/uti/sge_parse_num_par.h:58:45: error: unknown type name 'u_int'
int extended_parse_ulong_val(double *dvalp, u_long32 *uvalp, u_long32 type,


../common/basis_types.h:111:20: note: expanded from macro 'u_long32'
# define u_long32 u_int


fatal error: too many errors emitted, stopping now [-ferror-limit=]
5 warnings and 20 errors generated.
make: * [sge_ulong.o] Error 1
not done
:

Attachments (2)

patch-preview.txt (4.1 KB) - added by wish 4 years ago.
Added by email2trac
_1536_-add-appropriate-macros_-headers-and-storage-classes-to-make-soge-compile-on-macos-x-10_9_5.dpatch (86.3 KB) - added by wish 4 years ago.
Added by email2trac

Download all attachments as: .zip

Change History (5)

comment:1 Changed 4 years ago by wish

  • Owner changed from wish to dlove
  • Status changed from accepted to assigned
  • Type changed from defect to patch

1 patch for repository http://arc.liv.ac.uk/repos/darcs/sge:
It compiles -ship it! Well enough of it compiles on the Macs I have access to (OS X Maverick) that
one could have a go at installing a cluster. A couple of components don't compile but I'll file
separate bug reports for them once I'm satisfied they aren't just local difficulties.

Sat May 16 15:01:48 BST 2015 William Hay (AKA w.hay@…) <wish@…>

  • #1536: Add appropriate macros, headers and storage classes to make SoGE compile on MacOS X 10.9.5 Also change the sed of DEPEND_FLAGS so that sge_depend doesn't complain about being unable to find the file x86_64. The storage classes assigned to the variables in drmaa2_list_dict.h may not be correct but really not sure what the original coder though he was doing here as every file that includes that header was creating independent global variables with the same name AFAICT.

patch-preview.txt

_1536_-add-appropriate-macros_-headers-and-storage-classes-to-make-soge-compile-on-macos-x-10_9_5.dpatch

Changed 4 years ago by wish

Added by email2trac

comment:2 Changed 4 years ago by William Hay (AKA w.hay@…>

  • Resolution set to fixed
  • Status changed from assigned to closed

In 4817/sge:

Fix #1536: Add appropriate macros, headers and storage classes to compile on MacOS X 10.9.5
Also change the sed of DEPEND_FLAGS so that sge_depend doesn't complain about being unable to find
the file x86_64. The storage classes assigned to the variables in drmaa2_list_dict.h may not be
correct but really not sure what the original coder though he was doing here as every file that
includes that header was creating independent global variables with the same name AFAICT.

comment:3 Changed 4 years ago by Dave Love <d.love@…>

In 4831/sge:

Resolve conflict from "Fix #1536:"

Note: See TracTickets for help on using tickets.