diff --git a/ipc/src/Makefile b/ipc/src/Makefile
index 4546c3e..2e0998d 100644
--- a/ipc/src/Makefile
+++ b/ipc/src/Makefile
@@ -49,6 +49,11 @@ ifeq ($(OS_TARGET),WINNT)
 OBJ_SUFF = obj
 endif
 
+ifeq ($(OS_TARGET),SunOS)
+LDFLAGS += -shared -Wl,-Bsymbolic -mimpure-text
+CFLAGS += -fPIC
+endif
+
 source = subprocess.c
 objfiles = subprocess.$(OBJ_SUFF)
 libname = $(DLL_PREFIX)subprocess-$(CPU_ARCH)$(DLL_SUFFIX)
