Răsfoiți Sursa

php: fix sqlite module

- php comes with it's own embedded sqlite, so no need to select sqlite
- disable largefile support for !BR2_LARGEFILE
- php somehow forgets to link with -ldl, breaking the sqlite extension.
  Fix it by disabling the (unused?) modload support in sqlite.
Peter Korsgaard 16 ani în urmă
părinte
comite
0524852e7a
2 a modificat fișierele cu 5 adăugiri și 3 ștergeri
  1. 0 1
      package/php/Config.ext
  2. 5 2
      package/php/php.mk

+ 0 - 1
package/php/Config.ext

@@ -131,7 +131,6 @@ comment "Database extensions"
 config BR2_PACKAGE_PHP_EXT_SQLITE
 	bool "sqlite"
 	depends on BR2_PACKAGE_PHP
-	select BR2_PACKAGE_SQLITE
 	default y
 	help
 	  SQLite

+ 5 - 2
package/php/php.mk

@@ -109,7 +109,9 @@ endif
 ### Database extensions
 ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE),y)
 	PHP_CONFIGURE+=--with-sqlite
-	PHP_DEPS+=sqlite
+ifneq ($(BR2_LARGEFILE),y)
+	PHP_CFLAGS+= -DSQLITE_DISABLE_LFS
+endif
 ifeq ($(BR2_PACKAGE_PHP_EXT_SQLITE_UTF8),y)
 	PHP_CONFIGURE+=--enable-sqlite-utf8
 endif
@@ -118,6 +120,7 @@ ifeq ($(BR2_PACKAGE_PHP_EXT_PDO),y)
 	PHP_CONFIGURE+=--enable-pdo
 ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_SQLITE),y)
 	PHP_CONFIGURE+=--with-pdo-sqlite
+	PHP_CFLAGS+= -DSQLITE_OMIT_LOAD_EXTENSION
 endif
 ifeq ($(BR2_PACKAGE_PHP_EXT_PDO_MYSQL),y)
 	PHP_CONFIGURE+=--with-pdo-mysql=$(STAGING_DIR)/usr
@@ -164,7 +167,7 @@ $(PHP_DIR)/.configured: $(PHP_DIR)/.unpacked
 	touch $@
 
 $(PHP_DIR)/.built: $(PHP_DIR)/.configured
-	$(MAKE) CC=$(TARGET_CC) -C $(PHP_DIR)
+	$(MAKE) CC="$(TARGET_CC) $(PHP_CFLAGS)" -C $(PHP_DIR)
 	touch $@
 
 $(PHP_DIR)/.staged: $(PHP_DIR)/.built