-#define http_split_response(r, rl, h, b, bl) _http_split_response((r), (rl), (h), (b), (bl) TSRMLS_CC)
-PHP_HTTP_API STATUS _http_split_response(char *response, size_t repsonse_len, HashTable *headers, char **body, size_t *body_len TSRMLS_DC);
+#include <ctype.h>
+#define PHP_HTTP_IS_CTYPE(type, c) is##type((int) (unsigned char) (c))
+#define PHP_HTTP_TO_CTYPE(type, c) to##type((int) (unsigned char) (c))
+
+#include "php_http.h"
+
+#include "php_http_buffer.h"
+#include "php_http_misc.h"
+#include "php_http_options.h"
+
+#include "php_http.h"
+#include "php_http_cookie.h"
+#include "php_http_encoding.h"
+#include "php_http_info.h"
+#include "php_http_message.h"
+#include "php_http_env.h"
+#include "php_http_env_request.h"
+#include "php_http_env_response.h"
+#include "php_http_etag.h"
+#include "php_http_exception.h"
+#include "php_http_filter.h"
+#include "php_http_header_parser.h"
+#include "php_http_header.h"
+#include "php_http_message_body.h"
+#include "php_http_message_parser.h"
+#include "php_http_negotiate.h"
+#include "php_http_object.h"
+#include "php_http_params.h"
+#include "php_http_querystring.h"
+#include "php_http_client.h"
+#include "php_http_curl.h"
+#include "php_http_client_request.h"
+#include "php_http_client_response.h"
+#include "php_http_client_curl.h"
+#include "php_http_url.h"
+#include "php_http_version.h"
+
+ZEND_BEGIN_MODULE_GLOBALS(php_http)
+ struct php_http_env_globals env;
+ZEND_END_MODULE_GLOBALS(php_http)
+
+ZEND_EXTERN_MODULE_GLOBALS(php_http);
+
+#ifdef ZTS
+# include "TSRM/TSRM.h"
+# define PHP_HTTP_G ((zend_php_http_globals *) (*((void ***) tsrm_ls))[TSRM_UNSHUFFLE_RSRC_ID(php_http_globals_id)])
+# undef TSRMLS_FETCH_FROM_CTX
+# define TSRMLS_FETCH_FROM_CTX(ctx) void ***tsrm_ls = ((ctx)?(ctx):ts_resource_ex(0, NULL))
+#else
+# define PHP_HTTP_G (&php_http_globals)
+#endif