From: Tony v. d. H. <to...@us...> - 2004-05-03 15:04:18
|
Update of /cvsroot/ro-oslib/OSLib/!OsLib/Source/Test/readvarval In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv13995/!OsLib/Source/Test/readvarval Modified Files: .cvsignore Added Files: AMUmakefile GNUmakefile Make,fd7 readvarval.c Removed Files: !Clean,fd7 !Make,fd7 Makefile,fe1 Log Message: merged Unix-Build back into trunk (20040503-1) Index: .cvsignore =================================================================== RCS file: /cvsroot/ro-oslib/OSLib/!OsLib/Source/Test/readvarval/.cvsignore,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** .cvsignore 31 Dec 2003 14:42:39 -0000 1.4 --- .cvsignore 3 May 2004 15:03:29 -0000 1.5 *************** *** 4,5 **** --- 4,6 ---- *.o,ffd tree,ffd + main,ff8 \ No newline at end of file --- NEW FILE: AMUmakefile --- # Index: OSLib/!OsLib/Source/Test/readvarval/AMUmakefile,fe1 #=================================================================== TARGET = readvarval OBJS = o.${TARGET} TRACEOBJS = DIR = ${MAKEFILEDIR} TRACE ?= 0 LIBS_C = C:o.stubs ifeq (${APCS},32) OS_LIB = OSLib:OSLib32.o else OS_Lib = OSLib:OSLib.o endif ifneq (${TRACE},0) OBJS += ${TRACEOBJS} endif ifndef APCS $(error APCS mode is undefined) endif #------------------------------------------------------------------------ #Tools LINK = Link CC = cc -apcs 3/${APCS} ${DEPEND} -c -f${FLAGS_CC} \ -throwback ${INC} $(addprefix -D, ${DEFINE}) ASM = objasm -throwback RM = rm -nq STRIP = stripdepends MD = cdir MAKE = AMU -desktop #------------------------------------------------------------------------ #Toolflags COPYFLAGS = A~C~DFLN~P~Q~R~S~T~V INC = -IC:,OSLib: FLAGS_CC = fah DEFINE = #DEPEND = ifdef OUTPUT DEFINE += OUTPUT=${OUTPUT} endif #------------------------------------------------------------------------ .PHONY: all run clean distclean all: ${TARGET} ${TARGET}: ${OBJS} ${LIBS_C} ${OS_LIB} ${LINK} -output $@ ${OBJS} ${LIBS_C} ${OS_LIB} ${MAKE} ${MAKEFILEDIR}.AMUmakefile run run: ${TARGET} /${MAKEFILEDIR}.${TARGET} clean: ;${RM} ${OBJS} ${TARGET} distclean: clean -${STRIP} AMUmakefile ${RM} o #------------------------------------------------------------------------ #General rules .SUFFIXES: .o .c .c.o: ;${MD} o ${CC} $< -o $@ # Dynamic dependencies: --- !Make,fd7 DELETED --- --- !Clean,fd7 DELETED --- --- NEW FILE: Make,fd7 --- Echo <Sys$Time> Building <Obey$Dir> Wimpslot 4096k if "<C$Mode>"="32" then do AMU -D -f <Obey$Dir>.AMUmakefile -desktop %0 APCS=32 OUTPUT=1 if "<C$Mode>"<>"32" then do AMU -D -f <Obey$Dir>.AMUmakefile -desktop %0 APCS=26 OUTPUT=1 echo <sys$time> done --- Makefile,fe1 DELETED --- --- NEW FILE: readvarval.c --- /* test.readVarVal.c Test os_read_var_val_size interface */ //#define DEBUG //#define OUTPUT //#define SHORT #ifndef OUTPUT #define OUTPUT 0 #endif #include <stdio.h> #include <stdlib.h> #include "oslib/os.h" int main() { int iSize; os_var_type xType; int iStat = 0; os_error *Error= 0; int Context = 0; int vartype_number = 0; int vartype_macro = 0; int vartype_string = 0; do { #ifdef DEBUG printf( "Read var val size; context = 0x%8x\n" _ Context ); #endif Error = xos_read_var_val_size( "*", Context, os_VARTYPE_STRING, &iSize, &Context, &xType ); if( !Error && iSize != 0 ) { #ifdef SHORT printf( "Found: %s (size %04x; type %x)\n", (char*)Context, ~iSize, (int) xType ); #else if ( xType == os_VARTYPE_STRING || xType == os_VARTYPE_NUMBER || xType == os_VARTYPE_MACRO ) { int iUsed; char* buf; iSize = (~iSize) + 1; buf = malloc( iSize ); Error = xos_read_var_val( (char*)Context, buf, iSize, 0, // Context, os_VARTYPE_STRING, &iUsed, 0, // &Context, &xType ); if( !Error ) { switch ( xType ) { case os_VARTYPE_NUMBER: ++vartype_number; break; case os_VARTYPE_MACRO: ++vartype_macro; break; case os_VARTYPE_STRING: ++vartype_string; break; } #if OUTPUT if( xType == os_VARTYPE_NUMBER ) { printf( "%s Size %3d: %s = %d\n", "Number; ", iSize, (char*)Context, (int) *buf ); } else { *(buf+iUsed) = '\0'; printf( "%s Size %3d: %s: %s\n", (xType == os_VARTYPE_MACRO) ? "Macro; " : (xType == os_VARTYPE_STRING) ? "String; " : "Unknown;", iSize, (char*)Context, buf ); } #endif } free( buf ); } #endif } } while( !Error && Context ); printf( "ReadVarVal found %d numbers; %d macros; %d strings \n", vartype_number, vartype_macro, vartype_string ); if( Error ) { printf( "\nError: %08x - %s\n", Error -> errnum, Error -> errmess ); iStat = -1; } return iStat; } --- NEW FILE: GNUmakefile --- # Index: OSLib/!OsLib/Source/Test/readvarval/GNUmakefile #=================================================================== #------------------------------------------------------------------------ # paths & directories SOURCEDIR = ../.. BINDIR = ${SOURCEDIR}/../Bin CROSSPATH = /home/riscos/cross/bin #------------------------------------------------------------------------ #target-specific macros TARGET = readvarval OBJS = ${TARGET}.o BIN = ${TARGET},ff8 OSLIB = ${SOURCEDIR}/OSLib.o OSLIB32 = ${SOURCEDIR}/OSLib32.o SOURCES = Computer Core Toolbox User Types Macros INCLUDES = $(addprefix -I${SOURCEDIR}/, ${SOURCES} ) #------------------------------------------------------------------------ #Tools GCC = ${CROSSPATH}/gcc LD = ${CROSSPATH}/gcc RM = rm -f #------------------------------------------------------------------------ #Toolflags #------------------------------------------------------------------------ # Targets .PHONY: all clean all: ${BIN} ${BIN}: ${OBJS} ${OSLIB32} ${LD} -o $@ $^ clean: -${RM} ${OBJS} ${BIN} #------------------------------------------------------------------------ #General rules .SUFFIXES: .o .c .c.o: ${GCC} -c ${INCLUDES} $< -o $@ |