all-so: libocamlrun.so include Makefile CFLAGS += $(SHAREDCCCOMPOPTS) # Solaris: (uname = "SunOS") # Unfortunately, libcurses exists only as static library. This breaks # "gcc -shared", because the driver adds "-z text" to the ld invocation # (refuses non-PIC code). However, ld can link non-PIC code into shared # libraries, but we have to do the ld call ourselves. libocamlrun.so: $(OBJS) prims.o case `uname` in \ SunOS) \ /usr/ccs/bin/ld -z defs -G -o libocamlrun.so $(OBJS) prims.o `gcc -print-file-name=libgcc.a` $(BYTECCLIBS) -lc ;; \ *) \ gcc -shared -o libocamlrun.so $(OBJS) prims.o $(BYTECCLIBS) ;; \ esac