diff --git a/src/Makefile.am b/src/Makefile.am
index a6e9a88e4ebc63442c4db2f6b69aaa24dda91eec..06149b80c799907c92dda69006c3f633374a3c47 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -90,19 +90,18 @@ libring_la_LIBADD += \
 endif
 endif
 
+# XXX: It seems this should be the default value when otherwise left
+# unspecified, but for some reason this is required otherwise the
+# shared object fails to link against ffmpeg's libswscale.a.
+libring_la_LDFLAGS = $(AM_LDFLAGS)
 
 if HAVE_WIN32
-libring_la_LDFLAGS = $(AM_LDFLAGS) -no-undefined -avoid-version
+libring_la_LDFLAGS += -no-undefined -avoid-version
 endif
 
 if HAVE_OSX
 #FIXME necessary for -lintl
-libring_la_LDFLAGS = $(AM_LDFLAGS) -L/usr/local/opt/gettext/lib
-endif
-
-if HAVE_LINUX
-#needed to compile the .so
-libring_la_CXXFLAGS = $(AM_CXXFLAGS) -fPIC
+libring_la_LDFLAGS += -L/usr/local/opt/gettext/lib
 endif
 
 libring_la_SOURCES = \