diff --git a/data/Tupfile.lua b/data/Tupfile.lua index 8249624c22..9dce4b71ca 100644 --- a/data/Tupfile.lua +++ b/data/Tupfile.lua @@ -166,6 +166,7 @@ extra_files = { {"kolibrios/develop/oberon07/Docs/", PROGS .. "/develop/oberon07/Docs/*"}, {"kolibrios/develop/oberon07/Lib/KolibriOS/", PROGS .. "/develop/oberon07/Lib/KolibriOS/*"}, {"kolibrios/develop/oberon07/Samples/", PROGS .. "/develop/oberon07/Samples/*"}, + {"kolibrios/develop/c--/", PROGS .. "/cmm/c--/*"}, {"kolibrios/develop/tcc/", "common/develop/tcc/*"}, {"kolibrios/develop/TinyBasic/", "common/develop/TinyBasic/*"}, {"kolibrios/utils/cnc_editor/cnc_editor", PROGS .. "/other/cnc_editor/cnc_editor"}, diff --git a/programs/cmm/c--/cmm.kex b/programs/cmm/c--/c-- similarity index 100% rename from programs/cmm/c--/cmm.kex rename to programs/cmm/c--/c-- diff --git a/programs/cmm/c--/c--.elf b/programs/cmm/c--/c--.elf new file mode 100644 index 0000000000..c32c3c22bd Binary files /dev/null and b/programs/cmm/c--/c--.elf differ diff --git a/programs/cmm/c--/c--.exe b/programs/cmm/c--/c--.exe new file mode 100644 index 0000000000..d68bdb81f4 Binary files /dev/null and b/programs/cmm/c--/c--.exe differ diff --git a/programs/cmm/c--/cmm.exe b/programs/cmm/c--/cmm.exe deleted file mode 100644 index 893be9e2f7..0000000000 Binary files a/programs/cmm/c--/cmm.exe and /dev/null differ diff --git a/programs/develop/cmm/Makefile_pyakov_ununtu32 b/programs/develop/cmm/Makefile_pyakov_ununtu32 new file mode 100644 index 0000000000..ed0560e6d1 --- /dev/null +++ b/programs/develop/cmm/Makefile_pyakov_ununtu32 @@ -0,0 +1,110 @@ +Compiler = gcc + +Compiler_Options = -m32 -c -fno-exceptions -D_UNIX_ +#Compiler_Options = -c -fno-exceptions -O2 -D_WIN32_ + +#-D: _WIN32_ or _UNIX_ +#-D: for _WIN32_ add -D__CONSOLE__ + +Exe_file = cmm + + + +Path_Libs = -Ld:/TEMP/Dev-Cpp/lib/gcc/mingw32/3.4.2 -Ld:/TEMP/Dev-Cpp/lib/gcc -Ld:/TEMP/Dev-Cpp/lib -Ld:/TEMP/Dev-Cpp/lib + +Add_Libs = d:/TEMP/Dev-Cpp/lib/gcc/mingw32/3.4.2/crtbegin.o d:/TEMP/Dev-Cpp/lib/crt2.o d:/TEMP/Dev-Cpp/lib/gcc/mingw32/3.4.2/crtend.o + +Link_Libs = -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 + +My_Libs = main.o toka.o tokb.o tokc.o toke.o tokr.o errors.o debug.o outobj.o outpe.o disasm.o switch.o outle.o pointer.o new_type.o class.o res.o optreg.o libobj.o port.o + + +#Link_Libs = -lmingw32 -lgcc -lmoldname -lmingwex -lmingw32 -lmoldname -lmingwex -lmsvcrt -lgcc -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 + +#################### +## Makefile rules ## +#################### + +all : $(Exe_file) + +$(Exe_file) : $(My_Libs) +# ld -o cmm.exe $(Path_Libs) $(Add_Libs) $(My_Libs) $(Link_Libs) + $(Compiler) -m32 -o $(Exe_file) $(My_Libs) +# ld -o cmm.exe -Bdynamic d:/TEMP/Dev-Cpp/bin/../lib/gcc/mingw32/3.4.2/crtend.o d:/TEMP/Dev-Cpp/bin/../lib/gcc/mingw32/3.4.2/../../../crt2.o d:/TEMP/Dev-Cpp/bin/../lib/gcc/mingw32/3.4.2/crtbegin.o -Ld:/TEMP/Dev-Cpp/bin/../lib/gcc/mingw32/3.4.2 -Ld:/TEMP/Dev-Cpp/bin/../lib/gcc -Ld:/TEMP/Dev-Cpp/bin/../lib/gcc/mingw32/3.4.2/../../.. -Ld:/TEMP/Dev-Cpp/bin/../lib/gcc/mingw32/3.4.2/../../.. main.o toka.o tokb.o tokc.o toke.o tokr.o errors.o debug.o outobj.o outpe.o disasm.o switch.o outle.o pointer.o new_type.o class.o res.o optreg.o libobj.o port.o -lmingw32 -lgcc -lmoldname -lmingwex -lmsvcrt -luser32 -lkernel32 -ladvapi32 -lshell32 -lmingw32 -lmoldname -lmingwex -lmsvcrt -lgcc + + + + +clean: + rm *.o + + +# next are the exceptions that don't have to be compiled with the /zu option +# since they will never be called from a interrupt. hey.. I _tried_ to find +# a clean solution.. + +main.o : main.cpp + $(Compiler) $(Compiler_Options) $< + +toka.o : toka.cpp + $(Compiler) $(Compiler_Options) $< + +tokb.o : tokb.cpp + $(Compiler) $(Compiler_Options) $< + +tokc.o : tokc.cpp + $(Compiler) $(Compiler_Options) $< + +toke.o : toke.cpp + $(Compiler) $(Compiler_Options) $< + +tokr.o : tokr.cpp + $(Compiler) $(Compiler_Options) $< + +errors.o :errors.cpp + $(Compiler) $(Compiler_Options) $< + +debug.o : debug.cpp + $(Compiler) $(Compiler_Options) $< + +outobj.o : outobj.cpp + $(Compiler) $(Compiler_Options) $< + +outpe.o : outpe.cpp + $(Compiler) $(Compiler_Options) $< + +disasm.o : disasm.cpp + $(Compiler) $(Compiler_Options) $< + +switch.o : switch.cpp + $(Compiler) $(Compiler_Options) $< + +outle.o : outle.cpp + $(Compiler) $(Compiler_Options) $< + +pointer.o : pointer.cpp + $(Compiler) $(Compiler_Options) $< + +new_type.o : new_type.cpp + $(Compiler) $(Compiler_Options) $< + +class.o : class.cpp + $(Compiler) $(Compiler_Options) $< + +res.o : res.cpp + $(Compiler) $(Compiler_Options) $< + +optreg.o : optreg.cpp + $(Compiler) $(Compiler_Options) $< + +libobj.o : libobj.cpp + $(Compiler) $(Compiler_Options) $< + +port.o: port.cpp + $(Compiler) $(Compiler_Options) $< + +.cpp.o: + $(Compiler) $(Compiler_Options) $< + +.asm.o: + fasm $< diff --git a/programs/develop/cmm/main.cpp b/programs/develop/cmm/main.cpp index eeedebf399..c41ee29351 100644 --- a/programs/develop/cmm/main.cpp +++ b/programs/develop/cmm/main.cpp @@ -221,6 +221,46 @@ void CheckPageCode(unsigned int ofs); int MakePE(); int MakeObj(); void CheckUndefClassProc(); + +/* + +PAVEL YAKOV + +char* strupr(char* s) +{ + char* p = s; + while (*p = toupper(*p)) p++; + return s; +} +char* strlwr(char* s) +{ + char* p = s; + while (*p = tolower(*p)) p++; + return s; +} +int strnicmp(const char* s1, const char* s2, int len) +{ + unsigned char c1,c2; + + if(!len) + return 0; + + do{ + c1 = *s1++; + c2 = *s2++; + if (!c1||!c2) + break; + if (c1 == c2) + continue; + c1 = tolower(c1); + c2 = tolower(c2); + if (c1!=c2) + break; + } while (--len); + return (int)c1 - (int)c2; +} +*/ + /* void PrintTegList(structteg *tteg) {