Index: utils/Makefile ================================================================== --- utils/Makefile +++ utils/Makefile @@ -6,25 +6,25 @@ include ../buildsys.mk DISTCLEAN = objfw-config -install-extra: objfw-config objfw-compile - for i in objfw-config objfw-compile; do \ +install-extra: objfw-config objfw-compile objfw-new + for i in objfw-config objfw-compile objfw-new; do \ ${INSTALL_STATUS}; \ if ${MKDIR_P} ${DESTDIR}${bindir} && ${INSTALL} -m 755 $$i ${DESTDIR}${bindir}/${BIN_PREFIX}$$i; then \ ${INSTALL_OK}; \ else \ ${INSTALL_FAILED}; \ fi \ done uninstall-extra: - for i in objfw-config objfw-compile; do \ + for i in objfw-config objfw-compile objfw-new; do \ if test -f ${DESTDIR}${bindir}/${BIN_PREFIX}$$i; then \ if rm -f ${DESTDIR}${bindir}/${BIN_PREFIX}$$i; then \ ${DELETE_OK}; \ else \ ${DELETE_FAILED}; \ fi \ fi \ done ADDED utils/objfw-new Index: utils/objfw-new ================================================================== --- utils/objfw-new +++ utils/objfw-new @@ -0,0 +1,58 @@ +#!/bin/sh + +show_help() { + echo "Usage: objfw-new app|class name" + exit 1 +} + +already_exists() { + echo "$1 already exists! Aborting..." + exit 1 +} + +type="$1" +name="$2" + +test -z "$name" && show_help + +case "$1" in + app) + test -f "$name.m" && already_exists "$name.m" + + cat >"$name.m" <<__EOF__ +#import + +@interface $name: OFObject +@end + +OF_APPLICATION_DELEGATE($name) + +@implementation $name +- (void)applicationDidFinishLaunching +{ + [OFApplication terminate]; +} +@end +__EOF__ + ;; + class) + test -f "$name.h" && already_exists "$name.h" + test -f "$name.m" && already_exists "$name.m" + + cat >"$name.h" <<__EOF__ +#import + +@interface $name: OFObject +@end +__EOF__ + cat >"$name.m" <<__EOF__ +#import "$name.h" + +@implementation $name +@end +__EOF__ + ;; + *) + show_help + ;; +esac