Further updates to the Makefile.lite build system.

Signed-off-by: Erik de Castro Lopo <erikd@mega-nerd.com>
diff --git a/Makefile.deps b/Makefile.deps
index 6029446..1dea2fa 100644
--- a/Makefile.deps
+++ b/Makefile.deps
@@ -19,12 +19,8 @@
 ifeq ($(findstring Windows,$(OS)),Windows) # "Windows" is provided by GNU Make's internal $(OS)
     LIBFLAC_DEPS = share/win_utf8_io
 else
-ifeq ($(findstring MINGW,$(OS)),MINGW) # "MINGW" is provided by config.mk's `uname -s`
-    LIBFLAC_DEPS = share/win_utf8_io
-else
     LIBFLAC_DEPS =
 endif
-endif
 
 libFLAC: $(LIBFLAC_DEPS)
 flac: libFLAC share
diff --git a/Makefile.lite b/Makefile.lite
index abd9591..740fc7f 100644
--- a/Makefile.lite
+++ b/Makefile.lite
@@ -32,7 +32,7 @@
 topdir = .
 
 .PHONY: all doc src examples libFLAC libFLAC++ share/win_utf8_io share plugin_common flac metaflac test_grabbag test_libFLAC test_libFLAC++ test_seeking test_streams flacdiff flactimer
-all: doc src examples
+all: src examples
 
 DEFAULT_CONFIG = release
 
diff --git a/build/compile.mk b/build/compile.mk
index a2636c4..fb24344 100644
--- a/build/compile.mk
+++ b/build/compile.mk
@@ -27,11 +27,11 @@
 %.debug.o %.release.o : %.cpp
 	$(CCC) $(CXXFLAGS) -c $< -o $@
 %.debug.pic.o %.release.pic.o : %.c
-	$(CC) $(CFLAGS) -fPIC -DPIC -c $< -o $@
+	$(CC) $(CFLAGS) $(F_PIC) -DPIC -c $< -o $@
 %.debug.pic.o %.release.pic.o : %.cc
-	$(CCC) $(CXXFLAGS) -fPIC -DPIC -c $< -o $@
+	$(CCC) $(CXXFLAGS) $(F_PIC) -DPIC -c $< -o $@
 %.debug.pic.o %.release.pic.o : %.cpp
-	$(CCC) $(CXXFLAGS) -fPIC -DPIC -c $< -o $@
+	$(CCC) $(CXXFLAGS) $(F_PIC) -DPIC -c $< -o $@
 %.debug.i %.release.i : %.c
 	$(CC) $(CFLAGS) -E $< -o $@
 %.debug.i %.release.i : %.cc
diff --git a/build/config.mk b/build/config.mk
index 916c541..67f33a9 100644
--- a/build/config.mk
+++ b/build/config.mk
@@ -24,6 +24,7 @@
 USE_ICONV   ?= 1
 USE_LROUND  ?= 1
 USE_FSEEKO  ?= 1
+USE_LANGINFO_CODESET ?= 1
 
 #
 # debug/release selection
@@ -31,23 +32,25 @@
 
 DEFAULT_BUILD = release
 
+F_PIC := -fPIC
+
 # returns Linux, Darwin, FreeBSD, etc.
-ifdef OS_OVERRIDE
-    OS := $(OS_OVERRIDE)
-else
+ifndef OS
     OS := $(shell uname -s)
 endif
 # returns i386, x86_64, powerpc, etc.
-ifdef PROC_OVERRIDE
-    PROC := $(PROC_OVERRIDE)
-else
-    ifeq ($(findstring MINGW,$(OS)),MINGW)
+ifndef PROC
+    ifeq ($(findstring Windows,$(OS)),Windows)
         PROC := i386 # failsafe
         USE_ICONV := 0
-        # ifeq (mingw32,$(shell gcc -dumpmachine)) # MinGW (mainline): mingw32
+        USE_LANGINFO_CODESET := 0
+        ifeq (mingw32,$(shell gcc -dumpmachine)) # MinGW (mainline): mingw32
+            USE_FSEEKO := 0
+        endif
         # ifeq ($(findstring i686,$(shell gcc -dumpmachine)),i686) # MinGW-w64: i686-w64-mingw32
         ifeq ($(findstring x86_64,$(shell gcc -dumpmachine)),x86_64) # MinGW-w64: x86_64-w64-mingw32
             PROC := x86_64
+            F_PIC :=
         endif
     else
         PROC := $(shell uname -p)
@@ -83,7 +86,7 @@
 
 VERSION=\"1.3.0\"
 
-CONFIG_CFLAGS=$(CUSTOM_CFLAGS) -DHAVE_STDINT_H -DHAVE_INTTYPES_H -DHAVE_CXX_VARARRAYS -DHAVE_LANGINFO_CODESET -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
+CONFIG_CFLAGS=$(CUSTOM_CFLAGS) -DHAVE_STDINT_H -DHAVE_INTTYPES_H -DHAVE_CXX_VARARRAYS -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
 
 ifeq ($(OS),Darwin)
     CONFIG_CFLAGS += -DFLAC__SYS_DARWIN -arch $(PROC)
@@ -134,3 +137,7 @@
 ifneq (0,$(USE_FSEEKO))
     CONFIG_CFLAGS += -DHAVE_FSEEKO
 endif
+
+ifneq (0,$(USE_LANGINFO_CODESET))
+    CONFIG_CFLAGS += -DHAVE_LANGINFO_CODESET
+endif
diff --git a/build/lib.mk b/build/lib.mk
index bb52b1a..5d81f8f 100644
--- a/build/lib.mk
+++ b/build/lib.mk
@@ -39,13 +39,15 @@
 ifeq ($(OS),Darwin)
     STATIC_LIB_SUFFIX = a
     DYNAMIC_LIB_SUFFIX = dylib
-else ifeq ($(findstring MINGW,$(OS)),MINGW)
+else
+ifeq ($(findstring Windows,$(OS)),Windows)
     STATIC_LIB_SUFFIX = a
     DYNAMIC_LIB_SUFFIX = dll
 else
     STATIC_LIB_SUFFIX = a
     DYNAMIC_LIB_SUFFIX = so
 endif
+endif
 STATIC_LIB_NAME     = $(LIB_NAME).$(STATIC_LIB_SUFFIX)
 DYNAMIC_LIB_NAME    = $(LIB_NAME).$(DYNAMIC_LIB_SUFFIX)
 STATIC_LIB          = $(LIBPATH)/$(STATIC_LIB_NAME)
diff --git a/src/Makefile.lite b/src/Makefile.lite
index 680f5fb..8266b6c 100644
--- a/src/Makefile.lite
+++ b/src/Makefile.lite
@@ -31,7 +31,7 @@
 endif
 endif
 
-ifeq ($(findstring MINGW,$(OS)),MINGW)
+ifeq ($(findstring Windows,$(OS)),Windows)
     EXTRA_TARGETS += share/win_utf8_io
 endif
 
@@ -50,7 +50,7 @@
 valgrind: all
 release : all
 
-flac libFLAC libFLAC++ metaflac plugin_common plugin_xmms share test_grabbag test_libs_common test_libFLAC test_libFLAC++ test_seeking test_streams:
+flac libFLAC libFLAC++ metaflac plugin_common plugin_xmms share/win_utf8_io share test_grabbag test_libs_common test_libFLAC test_libFLAC++ test_seeking test_streams:
 	(cd $@ ; $(MAKE) -f Makefile.lite $(CONFIG))
 
 flacdiff flactimer:
diff --git a/src/plugin_common/Makefile.lite b/src/plugin_common/Makefile.lite
index 5dd05e7..b20d26d 100644
--- a/src/plugin_common/Makefile.lite
+++ b/src/plugin_common/Makefile.lite
@@ -24,7 +24,16 @@
 
 LIB_NAME = libplugin_common
 INCLUDES = -I$(topdir)/include -I$(HOME)/local/include
-DEFINES  = 
+
+ifeq ($(OS),Darwin)
+    EXPLICIT_LIBS = $(libdir)/libgrabbag.a $(libdir)/libreplaygain_analysis.a $(libdir)/libFLAC.a $(OGG_EXPLICIT_LIBS) -lm
+else
+ifeq ($(findstring Windows,$(OS)),Windows)
+    LIBS = -lgrabbag -lreplaygain_analysis -lFLAC -lwin_utf8_io $(OGG_LIBS) -lm
+else
+    LIBS = -lgrabbag -lreplaygain_analysis -lFLAC $(OGG_LIBS) -lm
+endif
+endif
 
 SRCS_C = \
 	charset.c \