diff --git a/codecs/Makefile b/codecs/Makefile
index f7bde5c50173034afc6d392a47127cf74164bea3..ef76962e5faa5c7bd9017b18d51e1823e4530ae0 100644
--- a/codecs/Makefile
+++ b/codecs/Makefile
@@ -55,7 +55,4 @@ $(LIBG722):
 
 $(if $(filter codec_g722,$(EMBEDDED_MODS)),modules.link,codec_g722.so): $(LIBG722)
 
-codec_resample.o: ASTCFLAGS+=-I$(ASTTOPDIR)/main/libresample/include
-ifneq ($(findstring $(OSARCH), mingw32 cygwin ),)
-  codec_resample.so: LIBS += $(ASTTOPDIR)/main/libresample/libresample.a
-endif
+codec_resample.o: ASTCFLAGS+=-I$(ASTTOPDIR)/res/libresample/include
diff --git a/codecs/codec_resample.c b/codecs/codec_resample.c
index 66d60169d93be3bff34458f0c73c44c45b973080..718ab88ae05b8b502ff225c9c7fa2f2b4f73ea52 100644
--- a/codecs/codec_resample.c
+++ b/codecs/codec_resample.c
@@ -24,6 +24,10 @@
  * \ingroup codecs
  */
 
+/*** MODULEINFO
+	<depend>res_resample</depend>
+ ***/
+
 #include "asterisk.h"
 
 ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
diff --git a/main/Makefile b/main/Makefile
index fc5fbd747feb93565804f29b3a8465985473a264..ffbd4bf7fa6b83dbe1295b7fcf937a543d0292d6 100644
--- a/main/Makefile
+++ b/main/Makefile
@@ -111,9 +111,6 @@ editline/libedit.a: CHECK_SUBDIR
 db1-ast/libdb1.a: CHECK_SUBDIR
 	CFLAGS="$(ASTCFLAGS)" LDFLAGS="$(ASTLDFLAGS)" $(MAKE) -C db1-ast libdb1.a
 
-libresample/libresample.a: CHECK_SUBDIR
-	$(MAKE) -f Makefile.asterisk -C libresample libresample.a
-
 ast_expr2.c ast_expr2.h:
 	bison -o $@ -d --name-prefix=ast_yy ast_expr2.y
 
@@ -155,7 +152,7 @@ else
 MAIN_TGT:=asterisk
 endif
 
-$(MAIN_TGT): $(OBJS) editline/libedit.a db1-ast/libdb1.a minimime/libmmime.a $(AST_EMBED_LDSCRIPTS) libresample/libresample.a
+$(MAIN_TGT): $(OBJS) editline/libedit.a db1-ast/libdb1.a minimime/libmmime.a $(AST_EMBED_LDSCRIPTS)
 	@$(CC) -c -o buildinfo.o $(ASTCFLAGS) buildinfo.c
 	$(ECHO_PREFIX) echo "   [LD] $^ -> $@"
 ifneq ($(findstring chan_h323,$(MENUSELECT_CHANNELS)),)
@@ -172,4 +169,3 @@ clean::
 	@$(MAKE) -C db1-ast clean
 	@$(MAKE) -C stdtime clean
 	@$(MAKE) -C minimime clean
-	@$(MAKE) -f Makefile.asterisk -C libresample clean
diff --git a/res/Makefile b/res/Makefile
index cfac3183a77799dcd76248d523c54654ce94a6fe..496264f0b92b45aed4a70f9acce110b777a96031 100644
--- a/res/Makefile
+++ b/res/Makefile
@@ -47,6 +47,9 @@ ael/ael.tab.c ael/ael.tab.h:
 
 ael/pval.o: ael/pval.c
 
+res_resample.so: libresample/src/resample.o libresample/src/resamplesubs.o libresample/src/filterkit.o
+
 clean::
 	rm -f snmp/*.o
 	rm -f ael/*.o
+	rm -f libresample/src/*.o
diff --git a/main/libresample/LICENSE.txt b/res/libresample/LICENSE.txt
similarity index 100%
rename from main/libresample/LICENSE.txt
rename to res/libresample/LICENSE.txt
diff --git a/main/libresample/Makefile.asterisk b/res/libresample/Makefile.asterisk
similarity index 100%
rename from main/libresample/Makefile.asterisk
rename to res/libresample/Makefile.asterisk
diff --git a/main/libresample/Makefile.in b/res/libresample/Makefile.in
similarity index 100%
rename from main/libresample/Makefile.in
rename to res/libresample/Makefile.in
diff --git a/main/libresample/README.txt b/res/libresample/README.txt
similarity index 100%
rename from main/libresample/README.txt
rename to res/libresample/README.txt
diff --git a/main/libresample/config.guess b/res/libresample/config.guess
similarity index 100%
rename from main/libresample/config.guess
rename to res/libresample/config.guess
diff --git a/main/libresample/config.sub b/res/libresample/config.sub
similarity index 100%
rename from main/libresample/config.sub
rename to res/libresample/config.sub
diff --git a/main/libresample/configure b/res/libresample/configure
similarity index 100%
rename from main/libresample/configure
rename to res/libresample/configure
diff --git a/main/libresample/configure.in b/res/libresample/configure.in
similarity index 100%
rename from main/libresample/configure.in
rename to res/libresample/configure.in
diff --git a/main/libresample/include/libresample.h b/res/libresample/include/libresample.h
similarity index 100%
rename from main/libresample/include/libresample.h
rename to res/libresample/include/libresample.h
diff --git a/main/libresample/install-sh b/res/libresample/install-sh
similarity index 100%
rename from main/libresample/install-sh
rename to res/libresample/install-sh
diff --git a/main/libresample/src/configtemplate.h b/res/libresample/src/configtemplate.h
similarity index 100%
rename from main/libresample/src/configtemplate.h
rename to res/libresample/src/configtemplate.h
diff --git a/main/libresample/src/filterkit.c b/res/libresample/src/filterkit.c
similarity index 100%
rename from main/libresample/src/filterkit.c
rename to res/libresample/src/filterkit.c
diff --git a/main/libresample/src/filterkit.h b/res/libresample/src/filterkit.h
similarity index 100%
rename from main/libresample/src/filterkit.h
rename to res/libresample/src/filterkit.h
diff --git a/main/libresample/src/resample.c b/res/libresample/src/resample.c
similarity index 100%
rename from main/libresample/src/resample.c
rename to res/libresample/src/resample.c
diff --git a/main/libresample/src/resample_defs.h b/res/libresample/src/resample_defs.h
similarity index 100%
rename from main/libresample/src/resample_defs.h
rename to res/libresample/src/resample_defs.h
diff --git a/main/libresample/src/resamplesubs.c b/res/libresample/src/resamplesubs.c
similarity index 100%
rename from main/libresample/src/resamplesubs.c
rename to res/libresample/src/resamplesubs.c
diff --git a/main/libresample/tests/compareresample.c b/res/libresample/tests/compareresample.c
similarity index 100%
rename from main/libresample/tests/compareresample.c
rename to res/libresample/tests/compareresample.c
diff --git a/main/libresample/tests/resample-sndfile.c b/res/libresample/tests/resample-sndfile.c
similarity index 100%
rename from main/libresample/tests/resample-sndfile.c
rename to res/libresample/tests/resample-sndfile.c
diff --git a/main/libresample/tests/testresample.c b/res/libresample/tests/testresample.c
similarity index 100%
rename from main/libresample/tests/testresample.c
rename to res/libresample/tests/testresample.c
diff --git a/main/libresample/win/libresample.dsp b/res/libresample/win/libresample.dsp
similarity index 100%
rename from main/libresample/win/libresample.dsp
rename to res/libresample/win/libresample.dsp
diff --git a/main/libresample/win/libresample.vcproj b/res/libresample/win/libresample.vcproj
similarity index 100%
rename from main/libresample/win/libresample.vcproj
rename to res/libresample/win/libresample.vcproj
diff --git a/res/res_resample.c b/res/res_resample.c
new file mode 100644
index 0000000000000000000000000000000000000000..ac85c3f43ad37294ac660b462b56dde2060df21f
--- /dev/null
+++ b/res/res_resample.c
@@ -0,0 +1,44 @@
+/*
+ * Asterisk -- A telephony toolkit for Linux.
+ *
+ * Copyright (C) 2007, Digium, Inc.
+ *
+ * Russell Bryant <russell@digium.com>
+ *
+ * See http://www.asterisk.org for more information about
+ * the Asterisk project. Please do not directly contact
+ * any of the maintainers of this project for assistance;
+ * the project provides a web site, mailing lists and IRC
+ * channels for your use.
+ *
+ * This program is free software, distributed under the terms of
+ * the GNU General Public License Version 2. See the LICENSE file
+ * at the top of the source tree.
+ */
+
+/*!
+ * \file
+ *
+ * \author Russell Bryant <russell@digium.com>
+ */
+
+#include "asterisk.h"
+
+ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
+
+#include "asterisk/module.h"
+
+static int load_module(void)
+{
+	return 0;
+}
+
+static int unload_module(void)
+{
+	return -1;
+}
+
+AST_MODULE_INFO(ASTERISK_GPL_KEY, AST_MODFLAG_GLOBAL_SYMBOLS, "Resampling Support via libresample",
+		.load = load_module,
+		.unload = unload_module,
+	       );