diff --git a/include/platform.h b/include/platform.h index 60864c929..07b1faa9f 100644 --- a/include/platform.h +++ b/include/platform.h @@ -116,7 +116,7 @@ /* Make all declarations hidden (-fvisibility flag only affects definitions) */ /* (don't include system headers after this until corresponding pop!) */ -#if __GNUC_PREREQ(4,1) +#if __GNUC_PREREQ(4,1) && !defined(__CYGWIN__) # define PUSH_AND_SET_FUNCTION_VISIBILITY_TO_HIDDEN _Pragma("GCC visibility push(hidden)") # define POP_SAVED_FUNCTION_VISIBILITY _Pragma("GCC visibility pop") #else @@ -329,6 +329,10 @@ typedef unsigned smalluint; # endif #endif +#if defined(__CYGWIN__) +# define MAXSYMLINKS SYMLOOP_MAX +#endif + /* ---- Who misses what? ------------------------------------ */ @@ -389,6 +393,15 @@ typedef unsigned smalluint; # undef HAVE_NET_ETHERNET_H #endif +#if defined(__CYGWIN__) +# undef HAVE_CLEARENV +# undef HAVE_FDPRINTF +# undef HAVE_MEMRCHR +# undef HAVE_PTSNAME_R +# undef HAVE_STRVERSCMP +# undef HAVE_UNLOCKED_LINE_OPS +#endif + /* These BSD-derived OSes share many similarities */ #if (defined __digital__ && defined __unix__) \ || defined __APPLE__ \ diff --git a/libbb/Kbuild.src b/libbb/Kbuild.src index a6e80e692..875d02456 100644 --- a/libbb/Kbuild.src +++ b/libbb/Kbuild.src @@ -97,7 +97,6 @@ lib-y += strrstr.o lib-y += time.o lib-y += trim.o lib-y += u_signal_names.o -lib-y += udp_io.o lib-y += uuencode.o lib-y += vdprintf.o lib-y += verror_msg.o @@ -127,6 +126,15 @@ lib-$(CONFIG_FEATURE_MTAB_SUPPORT) += mtab.o lib-$(CONFIG_UNICODE_SUPPORT) += unicode.o lib-$(CONFIG_FEATURE_CHECK_NAMES) += die_if_bad_username.o +lib-$(CONFIG_NC) += udp_io.o +lib-$(CONFIG_DNSD) += udp_io.o +lib-$(CONFIG_NTPD) += udp_io.o +lib-$(CONFIG_TFTP) += udp_io.o +lib-$(CONFIG_TFTPD) += udp_io.o +lib-$(CONFIG_TCPSVD) += udp_io.o +lib-$(CONFIG_UDPSVD) += udp_io.o +lib-$(CONFIG_TRACEROUTE) += udp_io.o + lib-$(CONFIG_LOSETUP) += loop.o lib-$(CONFIG_FEATURE_MOUNT_LOOP) += loop.o