From c07e541644ec1448671b08343a4c5315d5a1805e Mon Sep 17 00:00:00 2001 From: patacongo Date: Sat, 1 Aug 2009 21:48:57 +0000 Subject: [PATCH] Install .html files; install exe's in cgi-bin subdir git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@2000 42af7a65-404d-4744-a932-0658087f49c3 --- examples/thttpd/content/Makefile | 12 ++++- examples/thttpd/content/hello.c | 69 -------------------------- examples/thttpd/content/hello/Makefile | 2 +- 3 files changed, 11 insertions(+), 72 deletions(-) delete mode 100644 examples/thttpd/content/hello.c diff --git a/examples/thttpd/content/Makefile b/examples/thttpd/content/Makefile index 4a25e2e5f3..30d6c23aed 100644 --- a/examples/thttpd/content/Makefile +++ b/examples/thttpd/content/Makefile @@ -34,17 +34,19 @@ ############################################################################ SUBDIRS = hello +INSTALL_FILES = index.html style.css THTTPD_DIR = $(TOPDIR)/examples/thttpd CONTENT_DIR = $(THTTPD_DIR)/content ROMFS_DIR = $(CONTENT_DIR)/romfs ROMFS_IMG = $(CONTENT_DIR)/romfs.img ROMFS_HDR = $(CONTENT_DIR)/romfs.h +ROMFSCGI_DIR = $(ROMFS_DIR)/cgi-bin SYMTAB = $(CONTENT_DIR)/symtab.h define DIR_template $(1)_$(2): - @$(MAKE) -C $(1) $(3) TOPDIR=$(TOPDIR) ROMFS_DIR=$(ROMFS_DIR) CROSSDEV=$(CROSSDEV) + @$(MAKE) -C $(1) $(3) TOPDIR=$(TOPDIR) CROSSDEV=$(CROSSDEV) CGI_DIR=$(ROMFSCGI_DIR) endef all: $(ROMFS_HDR) $(SYMTAB) @@ -61,15 +63,21 @@ build: $(foreach DIR, $(SUBDIRS), $(DIR)_build) # Install each program in the romfs directory install: $(foreach DIR, $(SUBDIRS), $(DIR)_install) + @( for file in $(INSTALL_FILES); do\ + install -m 0644 -D $${file} $(ROMFS_DIR)/$${file}; \ + done; ) # Create the romfs directory $(ROMFS_DIR): @mkdir $(ROMFS_DIR) +$(ROMFSCGI_DIR): $(ROMFS_DIR) + @mkdir $(ROMFSCGI_DIR) + # Populate the romfs directory -populate: $(ROMFS_DIR) build install +populate: $(ROMFSCGI_DIR) build install # Create the romfs.img file from the populated romfs directory diff --git a/examples/thttpd/content/hello.c b/examples/thttpd/content/hello.c deleted file mode 100644 index 9028d8fb90..0000000000 --- a/examples/thttpd/content/hello.c +++ /dev/null @@ -1,69 +0,0 @@ -/**************************************************************************** - * examples/thttpd/content/hello.c - * Manatory "Hello, World!" Example - * - * Copyright (C) 2009 Gregory Nutt. All rights reserved. - * Author: Gregory Nutt - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * 3. Neither the name Gregory Nutt nor the names of its contributors may be - * used to endorse or promote products derived from this software - * without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS - * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE - * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, - * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, - * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS - * OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED - * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN - * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE - * POSSIBILITY OF SUCH DAMAGE. - * - ****************************************************************************/ - -/**************************************************************************** - * Included Files - ****************************************************************************/ - -#include -#include - -#include -#include - -/**************************************************************************** - * Public Functions - ****************************************************************************/ - -int main(int argc, char *argv[]) -{ - fprintf(stderr, "Hello requested from: %s\n", getenv("REMOTE_ADDR")); - - (void)printf( - "Content-type: text/html\r\n" - "Status: 200/html\r\n" - "\r\n" - "" - "" - "Hello" - "\r\n" - "" - "

Hello, World!

" - "

Requested by: %s

" - "\r\n", - getenv("REMOTE_ADDR")); - return 0; -} diff --git a/examples/thttpd/content/hello/Makefile b/examples/thttpd/content/hello/Makefile index 8a676627af..e980f1c341 100644 --- a/examples/thttpd/content/hello/Makefile +++ b/examples/thttpd/content/hello/Makefile @@ -74,5 +74,5 @@ clean: @rm -f $(BIN) $(R2SRC) *.o *.r1 *.r2 *~ .*.swp core install: - @install -D $(BIN) $(ROMFS_DIR)/$(BIN) + @install -m 0755 -D $(BIN) $(CGI_DIR)/$(BIN)