diff --git a/debian/changelog b/debian/changelog
new file mode 100755
index 0000000..f2da232
--- /dev/null
+++ b/debian/changelog
@@ -0,0 +1,65 @@
+thrift (1.0.0-dev) stable; urgency=low
+  * update version
+  * fix libthrift0.install
+
+ -- Roger Meier <roger@apache.org>  Tue, 08 Jan 2013 22:40:12 +0100
+
+thrift (0.9.0) stable; urgency=low
+
+  * update to 0.9.0
+
+ -- Jake Farrell <jfarrell@apache.org>  Wed, 10 Oct 2012 12:00:00 -0500
+
+thrift (0.7.0) stable; urgency=low
+
+  * update to 0.7.0
+
+ -- Jake Farrell <jfarrell@apache.org>  Tue, 10 Aug 2011 17:01:53 -0500
+
+thrift (0.7.0-dev1) stable; urgency=low
+  * added glib
+  * fix location of libthrift.jar
+
+ -- Roger Meier <roger@apache.org>  Tue, 12 Apr 2011 21:41:18 +0200
+
+thrift (0.6.0-dev1) stable; urgency=low
+
+  * update version field
+  * added debian folder to thrift/contrib
+  * changed a few details in control file
+  * update copyright file
+
+ -- Roger Meier <roger@apache.org>  Tue, 14 Dec 2010 12:12:33 -0800
+
+thrift (0.5.0+nmu2) stable; urgency=low
+
+  * Non-maintainer upload.
+  * Merged THRIFT-71_v9.patch to skip ./bootstrap.sh if not exists.
+    https://issues.apache.org/jira/secure/attachment/12465360/THRIFT-71_v9.patch
+
+ -- Yamashita Yuu <yamashita@geishatokyo.com>  Tue, 07 Dec 2010 15:00:55 +0900
+
+thrift (0.5.0+nmu1) stable; urgency=low
+
+  * Non-maintainer upload.
+  * Imported package information for php5-thrift from https://github.com/simplegeo/thrift.
+
+ -- Yamashita Yuu <yamashita@geishatokyo.com>  Tue, 07 Dec 2010 01:00:17 +0900
+
+thrift (0.5.0) stable; urgency=low
+
+  * update to 0.5.0
+
+ -- Roger Meier <roger@apache.org>  Fri, 08 Oct 2010 11:23:53 +0200
+
+thrift (0.4.0) stable; urgency=low
+
+  * update to 0.4.0
+
+ -- Roger Meier <roger@bufferoverflow.ch>  Sun, 22 Aug 2010 21:26:00 +0100
+
+thrift (0.2008.12.30~8.04) hardy; urgency=low
+
+  * Initial release.
+
+ -- Esteve Fernandez <esteve@fluidinfo.com>  Thu, 15 Jan 2009 11:34:24 +0100
diff --git a/debian/compat b/debian/compat
new file mode 100644
index 0000000..7ed6ff8
--- /dev/null
+++ b/debian/compat
@@ -0,0 +1 @@
+5
diff --git a/debian/control b/debian/control
new file mode 100644
index 0000000..f1b3fba
--- /dev/null
+++ b/debian/control
@@ -0,0 +1,154 @@
+Source: thrift
+Section: devel
+Priority: extra
+Build-Depends: debhelper (>= 5), build-essential, mono-gmcs, python-dev, ant,
+    mono-devel,  libmono-system-web2.0-cil, erlang-base, ruby1.8-dev, mongrel, autoconf, python-support,
+    automake, pkg-config, libtool, bison, flex, libboost-dev | libboost1.40-dev, python-all,
+    python-all-dev, python-all-dbg, openjdk-6-jdk | java-sdk, libcommons-lang-java,
+    libboost-test-dev | libboost-test1.40-dev, libevent-dev, perl (>= 5.8.0-7),
+    php5, php5-dev, libglib2.0-dev
+Maintainer: Thrift Developer's <dev@thrift.apache.org>
+Homepage: http://thrift.apache.org/
+Vcs-Svn: https://svn.apache.org/repos/asf/thrift
+Vcs-Browser: http://svn.apache.org/viewvc/thrift
+Standards-Version: 3.7.2
+XS-Python-Version: >= 2.4
+
+Package: thrift-compiler
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Compiler for Thrift definition files
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the Thrift compiler that is used for translating
+ from .thrift files (containing the definitions) to the language binding
+ for the supported languages.
+
+Package: python-thrift
+Architecture: any
+Section: python
+Depends: ${python:Depends}, ${shlibs:Depends}, ${misc:Depends}
+Recommends: python-twisted-core
+Provides: ${python:Provides}
+Description: Python bindings for Thrift
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the Python bindings for Thrift. You will need the thrift
+ tool (in the thrift-compiler package) to compile your definition to Python
+ classes, and then the modules in this package will allow you to use those
+ classes in your programs.
+
+Package: python-thrift-dbg
+Architecture: any
+Section: python
+Depends: ${shlibs:Depends}, ${misc:Depends}, python-thrift (= ${binary:Version}), python-all-dbg
+Provides: ${python:Provides}
+Description: Python bindings for Thrift (debug version)
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the Python bindings for Thrift with debugging symbols.
+ You will need the thrift tool (in the thrift-compiler package) to compile your
+ definition to Python classes, and then the modules in this package will allow
+ you to use those classes in your programs.
+
+Package: ruby-thrift
+Architecture: all
+Section: libs
+Depends: ruby | ruby-interpreter, ${shlibs:Depends}, ${misc:Depends}
+Provides: libthrift-ruby
+Replaces: libthrift-ruby
+Breaks: libthrift-ruby
+Description: Ruby bindings for Thrift
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the Ruby bindings for Thrift. You will need the thrift
+ tool (in the thrift-compiler package) to compile your definition to Ruby
+ classes, and then the modules in this package will allow you to use those
+ classes in your programs.
+
+Package: libthrift-java
+Architecture: all
+Section: libs
+Depends: java-gcj-compat | java1-runtime | java2-runtime, ${misc:Depends}
+Recommends: libcommons-lang-java
+Description: Java bindings for Thrift
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the Java bindings for Thrift. You will need the thrift
+ tool (in the thrift-compiler package) to compile your definition to Java
+ classes, and then the modules in this package will allow you to use those
+ classes in your programs.
+
+Package: libthrift-cil
+Architecture: all
+Section: libs
+Depends: cli-common, libmono-corlib1.0-cil (>= 1.0), libmono-system1.0-cil (>= 1.0), 
+    libmono-system-web2.0-cil, ${misc:Depends}
+Description: CLI bindings for Thrift
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the CLI bindings for Thrift. You will need the thrift
+ tool (in the thrift-compiler package) to compile your definition to C#
+ classes, and then the modules in this package will allow you to use those
+ classes in your programs.
+
+Package: libthrift-perl
+Architecture: all
+Section: perl
+Depends: perl (>= 5.8.0-7), ${misc:Depends}
+Description: Perl bindings for Thrift
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the Perl bindings for Thrift. You will need the thrift
+ tool (in the thrift-compiler package) to compile your definition to Perl
+ classes, and then the modules in this package will allow you to use those
+ classes in your programs.
+
+Package: libthrift0
+Architecture: any
+Depends: ${shlibs:Depends}, ${misc:Depends}
+Description: Thrift C++ library
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the runtime libraries needed for C++ applications
+ using Thrift.
+
+Package: libthrift-dev
+Architecture: any
+Section: libdevel
+Depends: ${shlibs:Depends}, ${misc:Depends}, libthrift0, libglib2.0-dev
+Description: Thrift C++ library (development headers)
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the development libraries required for writing C++
+ applications using Thrift.
+
+Package: php5-thrift
+Architecture: any
+Section: php
+Depends: ${php:Depends}, ${shlibs:Depends}, ${misc:Depends}
+Provides: ${php:Provides}
+Description: PHP bindings for Thrift
+ Thrift is a software framework for scalable cross-language services
+ development. It combines a software stack with a code generation engine to
+ build services that work efficiently and seamlessly.
+ .
+ This package contains the PHP bindings for Thrift.
diff --git a/debian/copyright b/debian/copyright
new file mode 100644
index 0000000..25546b4
--- /dev/null
+++ b/debian/copyright
@@ -0,0 +1,129 @@
+This package was debianized by Thrift Developer's <dev@thrift.apache.org>.
+
+
+This package and the Debian packaging is licensed under the Apache License,
+see `/usr/share/common-licenses/Apache-2.0'.
+
+The following informations was copied from Apache Thrift LICENSE file.
+
+--------------------------------------------------
+SOFTWARE DISTRIBUTED WITH THRIFT:
+
+The Apache Thrift software includes a number of subcomponents with
+separate copyright notices and license terms. Your use of the source
+code for the these subcomponents is subject to the terms and
+conditions of the following licenses.
+
+--------------------------------------------------
+Portions of the following files are licensed under the MIT License:
+
+  lib/erl/src/Makefile.am
+
+Please see doc/otp-base-license.txt for the full terms of this license.
+
+
+--------------------------------------------------
+The following files contain some portions of code contributed under
+the Thrift Software License (see doc/old-thrift-license.txt), and relicensed
+under the Apache 2.0 License:
+
+  compiler/cpp/Makefile.am
+  compiler/cpp/src/generate/t_cocoa_generator.cc
+  compiler/cpp/src/generate/t_cpp_generator.cc
+  compiler/cpp/src/generate/t_csharp_generator.cc
+  compiler/cpp/src/generate/t_erl_generator.cc
+  compiler/cpp/src/generate/t_hs_generator.cc
+  compiler/cpp/src/generate/t_java_generator.cc
+  compiler/cpp/src/generate/t_ocaml_generator.cc
+  compiler/cpp/src/generate/t_perl_generator.cc
+  compiler/cpp/src/generate/t_php_generator.cc
+  compiler/cpp/src/generate/t_py_generator.cc
+  compiler/cpp/src/generate/t_rb_generator.cc
+  compiler/cpp/src/generate/t_st_generator.cc
+  compiler/cpp/src/generate/t_xsd_generator.cc
+  compiler/cpp/src/main.cc
+  compiler/cpp/src/parse/t_field.h
+  compiler/cpp/src/parse/t_program.h
+  compiler/cpp/src/platform.h
+  compiler/cpp/src/thriftl.ll
+  compiler/cpp/src/thrifty.yy
+  lib/csharp/src/Protocol/TBinaryProtocol.cs
+  lib/csharp/src/Protocol/TField.cs
+  lib/csharp/src/Protocol/TList.cs
+  lib/csharp/src/Protocol/TMap.cs
+  lib/csharp/src/Protocol/TMessage.cs
+  lib/csharp/src/Protocol/TMessageType.cs
+  lib/csharp/src/Protocol/TProtocol.cs
+  lib/csharp/src/Protocol/TProtocolException.cs
+  lib/csharp/src/Protocol/TProtocolFactory.cs
+  lib/csharp/src/Protocol/TProtocolUtil.cs
+  lib/csharp/src/Protocol/TSet.cs
+  lib/csharp/src/Protocol/TStruct.cs
+  lib/csharp/src/Protocol/TType.cs
+  lib/csharp/src/Server/TServer.cs
+  lib/csharp/src/Server/TSimpleServer.cs
+  lib/csharp/src/Server/TThreadPoolServer.cs
+  lib/csharp/src/TApplicationException.cs
+  lib/csharp/src/Thrift.csproj
+  lib/csharp/src/Thrift.sln
+  lib/csharp/src/TProcessor.cs
+  lib/csharp/src/Transport/TServerSocket.cs
+  lib/csharp/src/Transport/TServerTransport.cs
+  lib/csharp/src/Transport/TSocket.cs
+  lib/csharp/src/Transport/TStreamTransport.cs
+  lib/csharp/src/Transport/TTransport.cs
+  lib/csharp/src/Transport/TTransportException.cs
+  lib/csharp/src/Transport/TTransportFactory.cs
+  lib/csharp/ThriftMSBuildTask/Properties/AssemblyInfo.cs
+  lib/csharp/ThriftMSBuildTask/ThriftBuild.cs
+  lib/csharp/ThriftMSBuildTask/ThriftMSBuildTask.csproj
+  lib/rb/lib/thrift.rb
+  lib/st/README
+  lib/st/thrift.st
+  test/OptionalRequiredTest.cpp
+  test/OptionalRequiredTest.thrift
+  test/ThriftTest.thrift
+
+--------------------------------------------------
+For the aclocal/ax_boost_base.m4 and contrib/fb303/aclocal/ax_boost_base.m4 components:
+
+#   Copyright (c) 2007 Thomas Porschberg <thomas@randspringer.de>
+#
+#   Copying and distribution of this file, with or without
+#   modification, are permitted in any medium without royalty provided
+#   the copyright notice and this notice are preserved.
+
+--------------------------------------------------
+For the compiler/cpp/src/md5.[ch] components:
+
+/*
+  Copyright (C) 1999, 2000, 2002 Aladdin Enterprises.  All rights reserved.
+
+  This software is provided 'as-is', without any express or implied
+  warranty.  In no event will the authors be held liable for any damages
+  arising from the use of this software.
+
+  Permission is granted to anyone to use this software for any purpose,
+  including commercial applications, and to alter it and redistribute it
+  freely, subject to the following restrictions:
+
+  1. The origin of this software must not be misrepresented; you must not
+     claim that you wrote the original software. If you use this software
+     in a product, an acknowledgment in the product documentation would be
+     appreciated but is not required.
+  2. Altered source versions must be plainly marked as such, and must not be
+     misrepresented as being the original software.
+  3. This notice may not be removed or altered from any source distribution.
+
+  L. Peter Deutsch
+  ghost@aladdin.com
+
+ */
+
+---------------------------------------------------
+For the lib/rb/setup.rb: Copyright (c) 2000-2005 Minero Aoki,
+lib/ocaml/OCamlMakefile and lib/ocaml/README-OCamlMakefile components:
+     Copyright (C) 1999 - 2007  Markus Mottl
+
+Licensed under the terms of the GNU Lesser General Public License 2.1
+(see doc/lgpl-2.1.txt for the full terms of this license)
diff --git a/debian/dirs b/debian/dirs
new file mode 100644
index 0000000..ca882bb
--- /dev/null
+++ b/debian/dirs
@@ -0,0 +1,2 @@
+usr/bin
+usr/sbin
diff --git a/debian/docs b/debian/docs
new file mode 100644
index 0000000..50bd824
--- /dev/null
+++ b/debian/docs
@@ -0,0 +1,2 @@
+NEWS
+README
diff --git a/debian/libthrift-dev.install b/debian/libthrift-dev.install
new file mode 100644
index 0000000..58b5223
--- /dev/null
+++ b/debian/libthrift-dev.install
@@ -0,0 +1,4 @@
+usr/lib/*.a
+usr/lib/*.la
+usr/lib/pkgconfig
+usr/include
diff --git a/debian/libthrift0.install b/debian/libthrift0.install
new file mode 100755
index 0000000..ec74efc
--- /dev/null
+++ b/debian/libthrift0.install
@@ -0,0 +1,5 @@
+usr/lib/libthrift.so*
+usr/lib/libthrift-*.so*
+usr/lib/libthriftnb*.so*
+usr/lib/libthriftqt*.so*
+usr/lib/libthriftz*.so*
diff --git a/debian/php5-thrift.dirs b/debian/php5-thrift.dirs
new file mode 100644
index 0000000..8ca3a0f
--- /dev/null
+++ b/debian/php5-thrift.dirs
@@ -0,0 +1 @@
+etc/php5/conf.d
diff --git a/debian/rules b/debian/rules
new file mode 100755
index 0000000..8995f9c
--- /dev/null
+++ b/debian/rules
@@ -0,0 +1,207 @@
+#!/usr/bin/make -f
+# -*- makefile -*-
+# Sample debian/rules that uses debhelper.
+#
+# This file was originally written by Joey Hess and Craig Small.
+# As a special exception, when this file is copied by dh-make into a
+# dh-make output file, you may use that output file without restriction.
+# This special exception was added by Craig Small in version 0.37 of dh-make.
+#
+# Modified to make a template file for a multi-binary package with separated
+# build-arch and build-indep targets  by Bill Allombert 2001
+
+# Uncomment this to turn on verbose mode.
+#export DH_VERBOSE=1
+
+# This has to be exported to make some magic below work.
+export DH_OPTIONS
+
+PYVERS := $(shell pyversions -r)
+
+configure: configure-stamp
+configure-stamp:
+	dh_testdir
+	# Add here commands to configure the package.
+	if [ -f bootstrap.sh ]; then $(CURDIR)/bootstrap.sh; fi
+	$(CURDIR)/configure --prefix=/usr --with-c_glib --without-erlang
+
+	touch configure-stamp
+
+
+#Architecture
+build: build-arch build-indep
+	# Tests disabled
+	# $(MAKE) -C test check
+
+build-arch: build-arch-stamp
+build-arch-stamp: configure-stamp
+
+	# Compile compiler
+	$(MAKE) -C $(CURDIR)/compiler/cpp
+
+	# Compile C++ library
+	$(MAKE) -C $(CURDIR)/lib/cpp
+
+	# Compile C (glib) library
+	$(MAKE) -C $(CURDIR)/lib/c_glib
+
+	# Python library
+	cd $(CURDIR)/lib/py && \
+    for py in $(PYVERS); do  \
+        $$py setup.py build; \
+        $$py-dbg setup.py build; \
+    done
+
+	# PHP
+	cd $(CURDIR)/lib/php/src/ext/thrift_protocol && \
+		phpize && \
+		./configure && make
+
+	touch $@
+
+build-indep: build-indep-stamp
+build-indep-stamp: configure-stamp
+
+	# Add here commands to compile the indep part of the package.
+	#$(MAKE) doc
+
+	# Java
+	cd $(CURDIR)/lib/java && \
+		ant
+
+	# C#
+	$(MAKE) -C $(CURDIR)/lib/csharp
+
+	# Ruby
+	$(MAKE) -C $(CURDIR)/lib/rb
+
+	# Perl
+	$(MAKE) -C $(CURDIR)/lib/perl INSTALLDIRS=vendor
+
+	touch $@
+
+clean:
+	dh_testdir
+	dh_testroot
+	rm -f build-arch-stamp build-indep-stamp configure-stamp
+
+	# Add here commands to clean up after the build process.
+	-$(MAKE) clean
+
+	dh_clean
+
+install: install-indep install-arch
+install-indep:
+	dh_testdir
+	dh_testroot
+	dh_clean -k -i
+	dh_installdirs -i
+
+	# Add here commands to install the indep part of the package into
+	# debian/<package>-doc.
+	#INSTALLDOC#
+
+        # Java
+	mkdir -p $(CURDIR)/debian/libthrift-java/usr/share/java/ && \
+	cp $(CURDIR)/lib/java/build/libthrift*.jar \
+		$(CURDIR)/debian/libthrift-java/usr/share/java/
+
+        # Ruby
+	mkdir -p $(CURDIR)/debian/ruby-thrift/usr/lib/ruby/1.8 && \
+	cp $(CURDIR)/lib/rb/lib/thrift.rb \
+		$(CURDIR)/debian/ruby-thrift/usr/lib/ruby/1.8
+	cp -r $(CURDIR)/lib/rb/lib/thrift \
+		$(CURDIR)/debian/ruby-thrift/usr/lib/ruby/1.8
+	mkdir -p $(CURDIR)/debian/ruby-thrift/usr/lib/ruby/1.9.1 && \
+	cp $(CURDIR)/lib/rb/lib/thrift.rb \
+		$(CURDIR)/debian/ruby-thrift/usr/lib/ruby/1.9.1
+	cp -r $(CURDIR)/lib/rb/lib/thrift \
+		$(CURDIR)/debian/ruby-thrift/usr/lib/ruby/1.9.1
+
+	# C#
+	mkdir -p $(CURDIR)/debian/libthrift-cil/usr/lib/cli/thrift/ && \
+	cp $(CURDIR)/lib/csharp/Thrift.dll \
+		$(CURDIR)/debian/libthrift-cil/usr/lib/cli/thrift/Thrift.dll
+
+	# Perl
+	$(MAKE) -C $(CURDIR)/lib/perl install DESTDIR=$(CURDIR)/debian/libthrift-perl/usr
+
+	dh_install -i
+
+install-arch:
+	dh_testdir
+	dh_testroot
+	dh_clean -k -s
+	dh_installdirs -s
+
+	# Add here commands to install the arch part of the package into
+	# debian/tmp.
+	#$(MAKE) DESTDIR=$(CURDIR)/debian/thrift install
+
+	# Compiler
+	mkdir -p $(CURDIR)/debian/thrift-compiler/usr/bin && \
+	cp $(CURDIR)/compiler/cpp/thrift \
+		$(CURDIR)/debian/thrift-compiler/usr/bin/thrift && \
+	rmdir $(CURDIR)/debian/thrift-compiler/usr/sbin
+
+	# Python
+	cd $(CURDIR)/lib/py && \
+	for py in $(PYVERS); do \
+		$$py setup.py install --no-compile --root=$(CURDIR)/debian/python-thrift; \
+		$$py-dbg setup.py install --no-compile --root=$(CURDIR)/debian/python-thrift-dbg; \
+	done
+
+	find $(CURDIR)/debian/python-thrift-dbg -name "*.pyc" -print0 | xargs -0 rm -f
+	find $(CURDIR)/debian/python-thrift-dbg -name "*.py" -print0 | xargs -0 rm -f
+	find $(CURDIR)/debian/python-thrift-dbg -name "*.egg-info" -print0 | xargs -0 rm -rf
+	find $(CURDIR)/debian/python-thrift-dbg -depth -type d -empty -exec rmdir {} \;
+
+	# PHP
+	mkdir -p $(CURDIR)/debian/php5-thrift
+	cd $(CURDIR)/lib/php && \
+		$(MAKE) DESTDIR=$(CURDIR)/debian/php5-thrift install
+
+	# C++ and C (glib)
+	mkdir -p $(CURDIR)/debian/tmp; \
+	cd $(CURDIR)/lib/cpp && \
+		make DESTDIR=$(CURDIR)/debian/tmp install
+	cd $(CURDIR)/lib/c_glib && \
+		make DESTDIR=$(CURDIR)/debian/tmp install
+
+	dh_install --sourcedir=debian/tmp -s
+
+
+# Must not depend on anything. This is to be called by
+# binary-arch/binary-indep
+# in another 'make' thread.
+binary-common:
+	dh_testdir
+	dh_testroot
+	dh_installchangelogs
+	dh_installdocs
+	dh_installexamples
+	dh_installman
+	dh_link
+	dh_strip -Npython-thrift-dbg -Nthrift-compiler -Nlibthrift0 --dbg=python-thrift-dbg
+	dh_strip -Npython-thrift-dbg
+	dh_compress
+	dh_fixperms
+	dh_pysupport
+	dh_makeshlibs
+	dh_installdeb
+	dh_perl
+	dh_shlibdeps
+	dh_gencontrol
+	dh_md5sums
+	dh_builddeb
+# Build architecture independant packages using the common target.
+binary-indep: build-indep install-indep
+	$(MAKE) -f debian/rules DH_OPTIONS=-i binary-common
+
+# Build architecture dependant packages using the common target.
+binary-arch: build-arch install-arch
+	echo "php:Depends=phpapi-$(php-config5 --phpapi)" > debian/substvars
+	$(MAKE) -f debian/rules DH_OPTIONS=-s binary-common
+
+binary: binary-arch binary-indep
+.PHONY: build clean binary-indep binary-arch binary install install-indep install-arch configure
diff --git a/debian/substvars b/debian/substvars
new file mode 100644
index 0000000..badf572
--- /dev/null
+++ b/debian/substvars
@@ -0,0 +1 @@
+php:Depends=phpapi-
diff --git a/debian/thrift-doc.docs b/debian/thrift-doc.docs
new file mode 100644
index 0000000..299950c
--- /dev/null
+++ b/debian/thrift-doc.docs
@@ -0,0 +1,2 @@
+#DOCS#
+
diff --git a/debian/thrift-doc.install b/debian/thrift-doc.install
new file mode 100644
index 0000000..299950c
--- /dev/null
+++ b/debian/thrift-doc.install
@@ -0,0 +1,2 @@
+#DOCS#
+
