diff options
Diffstat (limited to 'openwrt/lighttpd.mk')
-rw-r--r-- | openwrt/lighttpd.mk | 72 |
1 files changed, 72 insertions, 0 deletions
diff --git a/openwrt/lighttpd.mk b/openwrt/lighttpd.mk new file mode 100644 index 0000000..bece136 --- /dev/null +++ b/openwrt/lighttpd.mk @@ -0,0 +1,72 @@ +###################################################### +# +# An example makefile to fetch a package from sources +# then fetch the ipkg updates required to the base package +# extract the archives into the build tree +# and then build the source +# +###################################################### + + +# For this example we'll use a fairly simple package that compiles easily +# and has sources available for download at sourceforge +LIGHTTPD=lighttpd-1.4.10 +LIGHTTPD_TARGET=.built +LIGHTTPD_DIR=$(BUILD_DIR)/$(LIGHTTPD) +LIGHTTPD_IPK=$(BUILD_DIR)/$(LIGHTTPD)_mipsel.ipk +LIGHTTPD_IPK_DIR=$(BUILD_DIR)/$(LIGHTTPD)-ipk + +LIGHTTPD_SITE=http://jan.kneschke.de/projects/lighttpd/download/ +LIGHTTPD_SOURCE=$(LIGHTTPD).tar.gz + + +# We need to download sources if we dont have them +$(DL_DIR)/$(LIGHTTPD_SOURCE) : + $(WGET) -P $(DL_DIR) $(LIGHTTPD_SITE)/$(LIGHTTPD_SOURCE) + +# if we have the sources, they do no good unless they are unpacked +$(LIGHTTPD_DIR)/.unpacked: $(DL_DIR)/$(LIGHTTPD_SOURCE) + gzip -cd $(DL_DIR)/$(LIGHTTPD_SOURCE) | tar -C $(BUILD_DIR) -xvf - + touch $(LIGHTTPD_DIR)/.unpacked + +# if we have the sources unpacked, we need to configure them +$(LIGHTTPD_DIR)/.configured: $(LIGHTTPD_DIR)/.unpacked + (cd $(LIGHTTPD_DIR); rm -rf config.cache; \ + $(TARGET_CONFIGURE_OPTS) \ + CFLAGS="$(TARGET_CFLAGS)" \ + LD=$(TARGET_CROSS)ld \ + ./configure \ + --target=$(GNU_TARGET_NAME) \ + --host=$(GNU_TARGET_NAME) \ + --build=$(GNU_HOST_NAME) \ + --prefix=/usr \ + --exec-prefix=/usr \ + --bindir=/usr/bin \ + --sbindir=/usr/sbin \ + --disable-zlib \ + --sysconfdir=/etc \ + --program-transform-name="s,y,y," \ + ); + touch $(LIGHTTPD_DIR)/.configured + + +# now that we have it all in place, just build it +$(LIGHTTPD_DIR)/$(LIGHTTPD_TARGET): $(LIGHTTPD_DIR)/.configured + cd $(LIGHTTPD_DIR) && $(MAKE) CC=$(TARGET_CC) DESTDIR="$(LIGHTTPD_IPK_DIR)" install + $(STAGING_DIR)/bin/sstrip $(LIGHTTPD_IPK_DIR)/usr/sbin/lighttpd + touch $(LIGHTTPD_DIR)/$(LIGHTTPD_TARGET) + +$(LIGHTTPD_IPK): uclibc $(LIGHTTPD_DIR)/$(LIGHTTPD_TARGET) + mkdir -p $(LIGHTTPD_IPK_DIR)/CONTROL + mkdir -p $(LIGHTTPD_IPK_DIR)/etc/init.d + cp $(LIGHTTPD_DIR)/openwrt/conffiles $(LIGHTTPD_IPK_DIR)/CONTROL + cp $(LIGHTTPD_DIR)/openwrt/control $(LIGHTTPD_IPK_DIR)/CONTROL + cp $(LIGHTTPD_DIR)/openwrt/S51lighttpd $(LIGHTTPD_IPK_DIR)/etc/init.d/ + cp $(LIGHTTPD_DIR)/openwrt/lighttpd.conf $(LIGHTTPD_IPK_DIR)/etc/ + + rm -f $(LIGHTTPD_IPK_DIR)/usr/lib/*.a + rm -f $(LIGHTTPD_IPK_DIR)/usr/lib/*.la + + cd $(BUILD_DIR); $(IPKG_BUILD) $(LIGHTTPD_IPK_DIR) + +lighttpd-ipk: $(LIGHTTPD_IPK) |