5 SUPPORT=libMonoSupportW.la
10 libMonoPosixHelper.la \
19 glib_libs = $(top_builddir)/mono/eglib/libeglib.la
21 # Source code which helps implement the ANSI C standards, and thus *should* be
22 # portable to any platform having a C compiler.
34 # Source code which helps implement POSIX and other related Unix standards,
35 # and *may* be portable between Unix platforms.
66 MPH_SOURCE = $(MPH_C_SOURCE)
67 MPH_LIBS = $(glib_libs)
69 MPH_SOURCE = $(MPH_C_SOURCE) $(MPH_UNIX_SOURCE)
70 MPH_LIBS = $(glib_libs)
82 BUNDLE_ZLIB_PATH=$(top_builddir)/mono/zlib/libz.la
83 Z_SOURCE=zlib-helper.c
86 Z_LIBS=$(STATIC_ZLIB_PATH)
91 Z_LIBS=$(BUNDLE_ZLIB_PATH)
95 libMonoPosixHelper_la_SOURCES = \
100 libMonoPosixHelper_la_LIBADD = \
105 # libMonoPosixHelper_la_LDFLAGS = -no-undefined -version-info 1:0:1
106 libMonoPosixHelper_la_LDFLAGS = -no-undefined -avoid-version
107 libMonoSupportW_la_LDFLAGS = -no-undefined -avoid-version
109 libMonoSupportW_la_SOURCES = \
114 libMonoSupportW_la_LIBADD = \
118 mkdir -p $(TEST_BUNDLE_PATH)
119 cp -L .libs/libMonoPosixHelper$(libsuffix) $(TEST_BUNDLE_PATH)/
122 # Use this target to refresh the values in map.[ch]
125 cp `pkg-config --variable=Programs create-native-map` . && \
126 $(top_builddir)/runtime/mono-wrapper create-native-map.exe \
127 --autoconf-member=d_off \
128 --autoconf-member=d_reclen \
129 --autoconf-member=d_type \
130 --exclude-native-symbol=Mono_Posix_Stdlib_snprintf \
131 --impl-macro=_GNU_SOURCE --impl-macro=_XOPEN_SOURCE \
132 --impl-header="<sys/types.h>" \
133 --impl-header="<sys/stat.h>" \
134 --autoconf-header="<netinet/in.h>" \
135 --autoconf-header="<sys/time.h>" \
136 --autoconf-header="<sys/poll.h>" \
137 --autoconf-header="<sys/wait.h>" \
138 --autoconf-header="<sys/statvfs.h>" \
139 --autoconf-header="<sys/xattr.h>" \
140 --autoconf-header="<sys/mman.h>" \
141 --autoconf-header="<sys/socket.h>" \
142 --autoconf-header="<sys/uio.h>" \
143 --autoconf-header="<unistd.h>" \
144 --impl-header="<fcntl.h>" \
145 --impl-header="<signal.h>" \
146 --autoconf-header="<poll.h>" \
147 --autoconf-header="<grp.h>" \
148 --impl-header="<errno.h>" \
149 --autoconf-header="<syslog.h>" \
150 --autoconf-header="<dirent.h>" \
151 --autoconf-header="<utime.h>" \
152 --impl-header="<time.h>" \
153 --impl-header="\"mph.h\"" \
154 --impl-header="\"map-impl.h\"" \
155 --rename-member=st_atime=st_atime_ \
156 --rename-member=st_ctime=st_ctime_ \
157 --rename-member=st_mtime=st_mtime_ \
158 --rename-namespace=Mono.Unix.Native=Mono.Posix \
159 --library=MonoPosixHelper \
160 $(mcs_topdir_from_srcdir)/class/lib/net_4_x/Mono.Posix.dll map
162 # Useful if mono is compiled with --enable-shared=no
165 sed -e 's,build_libtool_libs=no,build_libtool_libs=yes,g' libtool > 2; mv 2 libtool
166 echo "LIBTOOL = bash ./libtool" > 1
167 echo "LTCOMPILE = bash ./libtool --mode=compile $(COMPILE)" >> 1
168 sed -e 's,LIBTOOL =,LIBTOOL2 =,g' Makefile > 2
169 sed -e 's,LTCOMPILE =,LTCOMPILE2 =,g' 2 > 3
173 endif # !ENABLE_MSVC_ONLY
179 make -C $(top_srcdir)/msvc libmonoposixhelper
183 make -C $(top_srcdir)/msvc clean-libmonoposixhelper
185 endif # ENABLE_MSVC_ONLY