]> git.saurik.com Git - apple/icu.git/blobdiff - icuSources/config/mh-solaris-gcc
ICU-64243.0.1.tar.gz
[apple/icu.git] / icuSources / config / mh-solaris-gcc
index 6b822b152c944b82dc6882698a93741cdeeed9f9..d55d9cca0cd281391e0db983f75e044c1b248a7c 100644 (file)
@@ -1,6 +1,8 @@
 ## -*-makefile-*-
+## Copyright (C) 2016 and later: Unicode, Inc. and others.
+## License & terms of use: http://www.unicode.org/copyright.html
 ## Solaris-specific setup using gcc
-## Copyright (c) 1999-2004, International Business Machines Corporation and
+## Copyright (c) 1999-2014, International Business Machines Corporation and
 ## others. All Rights Reserved.
 
 ## Flags for position independent code
@@ -9,18 +11,30 @@ SHAREDLIBCXXFLAGS = -fPIC
 SHAREDLIBCPPFLAGS = -DPIC
 
 ## Commands to generate dependency files
-GEN_DEPS.c=    $(CC) -E -MM $(DEFS) $(CPPFLAGS)
-GEN_DEPS.cc=   $(CXX) -E -MM $(DEFS) $(CPPFLAGS)
+GEN_DEPS.c=    $(CC) -E -MM $(DEFS) $(CPPFLAGS) $(CFLAGS)
+GEN_DEPS.cc=   $(CXX) -E -MM $(DEFS) $(CPPFLAGS) $(CXXFLAGS)
+
+## These are the library specific LDFLAGS
+LDFLAGSICUDT=-nodefaultlibs -nostdlib
+
+## Additional flags when building libraries and with threads
+THREADSCPPFLAGS = -D_REENTRANT
 
 ## Compiler switch to embed a runtime search path
-LD_RPATH=      -R
-LD_RPATH_PRE=  
+LD_RPATH=       -R'$$'ORIGIN 
+LD_RPATH_PRE=   -R
 
 ## Compiler switch to embed a library name
-LD_SONAME = -h $(notdir $(MIDDLE_SO_TARGET))
+LD_SONAME = -h $(notdir $(MIDDLE_SO_TARGET)) $(PKGDATA_TRAILING_SPACE)
+
+## Shared library options
+LD_SOOPTIONS= -Wl,-Bsymbolic
 
 ## The type of assembly needed when pkgdata is used for generating shared libraries.
+## Only use this when not on x86 Solaris.
+ifeq (strip $(GENCCODE_ASSEMBLY),)
 GENCCODE_ASSEMBLY=-a sun
+endif
 
 ## Shared object suffix
 SO=            so
@@ -59,4 +73,8 @@ STATIC_O = ao
 %.$(SO): %.$(SO).$(SO_TARGET_VERSION_MAJOR)
        $(RM) $@ && ln -s ${*F}.$(SO).$(SO_TARGET_VERSION) $@
 
+## Remove shared library 's'
+STATIC_PREFIX_WHEN_USED = 
+STATIC_PREFIX = 
+
 ## End Solaris-specific setup