瀏覽代碼

library function realpath added (needed by new version of Unix.UnixFiles.Mod)

git-svn-id: https://svn.inf.ethz.ch/svn/lecturers/a2/trunk@7084 8c9fc860-2736-0410-a75d-ab315db34111
eth.guenter 8 年之前
父節點
當前提交
33e3886ff2
共有 3 個文件被更改,包括 8 次插入2 次删除
  1. 2 0
      source/Darwin.I386.Unix.Mod
  2. 2 0
      source/Linux.I386.Unix.Mod
  3. 4 2
      source/Solaris.I386.Unix.Mod

+ 2 - 0
source/Darwin.I386.Unix.Mod

@@ -320,6 +320,7 @@ VAR
 	utime-		: PROCEDURE {C} ( name: ADDRESS;  tb: ADDRESS ): LONGINT;
 	utime-		: PROCEDURE {C} ( name: ADDRESS;  tb: ADDRESS ): LONGINT;
 	access-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	access-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	select-		: PROCEDURE {C} ( width: LONGINT; rd, wr, ex: ADDRESS;  VAR timeout: Timeval ): LONGINT;
 	select-		: PROCEDURE {C} ( width: LONGINT; rd, wr, ex: ADDRESS;  VAR timeout: Timeval ): LONGINT;
+	realpath-		: PROCEDURE {C} ( file_name: ADDRESS; resolved_name: ADDRESS ): ADDRESS;
 
 
 	chdir-			: PROCEDURE {C} ( name: ADDRESS ): LONGINT;
 	chdir-			: PROCEDURE {C} ( name: ADDRESS ): LONGINT;
 	mkdir-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	mkdir-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
@@ -498,6 +499,7 @@ BEGIN
 	Dlsym( libc, "utime",	ADDRESSOF( utime ) );
 	Dlsym( libc, "utime",	ADDRESSOF( utime ) );
 	Dlsym( libc, "access",	ADDRESSOF( access ) );
 	Dlsym( libc, "access",	ADDRESSOF( access ) );
 	Dlsym( libc, "select",	ADDRESSOF( select ) );
 	Dlsym( libc, "select",	ADDRESSOF( select ) );
+	Dlsym( libc, "realpath",	ADDRESSOF( realpath ) );
 
 
 	Dlsym( libc, "chdir",	ADDRESSOF( chdir ) );
 	Dlsym( libc, "chdir",	ADDRESSOF( chdir ) );
 	Dlsym( libc, "mkdir",	ADDRESSOF( mkdir ) );
 	Dlsym( libc, "mkdir",	ADDRESSOF( mkdir ) );

+ 2 - 0
source/Linux.I386.Unix.Mod

@@ -317,6 +317,7 @@ VAR
 	utime-		: PROCEDURE {C} ( name: ADDRESS;  tb: ADDRESS ): LONGINT;
 	utime-		: PROCEDURE {C} ( name: ADDRESS;  tb: ADDRESS ): LONGINT;
 	access-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	access-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	select-		: PROCEDURE {C} ( width: LONGINT; rd, wr, ex: ADDRESS;  VAR timeout: Timeval ): LONGINT;
 	select-		: PROCEDURE {C} ( width: LONGINT; rd, wr, ex: ADDRESS;  VAR timeout: Timeval ): LONGINT;
+	realpath-		: PROCEDURE {C} ( file_name: ADDRESS; resolved_name: ADDRESS ): ADDRESS;
 
 
 	chdir-			: PROCEDURE {C} ( name: ADDRESS ): LONGINT;
 	chdir-			: PROCEDURE {C} ( name: ADDRESS ): LONGINT;
 	mkdir-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	mkdir-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
@@ -496,6 +497,7 @@ BEGIN
 	Dlsym( libc, "utime",	ADDRESSOF( utime ) );
 	Dlsym( libc, "utime",	ADDRESSOF( utime ) );
 	Dlsym( libc, "access",	ADDRESSOF( access ) );
 	Dlsym( libc, "access",	ADDRESSOF( access ) );
 	Dlsym( libc, "select",	ADDRESSOF( select ) );
 	Dlsym( libc, "select",	ADDRESSOF( select ) );
+	Dlsym( libc, "realpath",	ADDRESSOF( realpath ) );
 
 
 	Dlsym( libc, "chdir",	ADDRESSOF( chdir ) );
 	Dlsym( libc, "chdir",	ADDRESSOF( chdir ) );
 	Dlsym( libc, "mkdir",	ADDRESSOF( mkdir ) );
 	Dlsym( libc, "mkdir",	ADDRESSOF( mkdir ) );

+ 4 - 2
source/Solaris.I386.Unix.Mod

@@ -319,7 +319,8 @@ VAR
 	utime-		: PROCEDURE {C} ( name: ADDRESS;  tb: ADDRESS ): LONGINT;
 	utime-		: PROCEDURE {C} ( name: ADDRESS;  tb: ADDRESS ): LONGINT;
 	access-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	access-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	select-		: PROCEDURE {C} ( width: LONGINT; rd, wr, ex: ADDRESS;  VAR timeout: Timeval ): LONGINT;
 	select-		: PROCEDURE {C} ( width: LONGINT; rd, wr, ex: ADDRESS;  VAR timeout: Timeval ): LONGINT;
-
+	realpath-		: PROCEDURE {C} ( file_name: ADDRESS; resolved_name: ADDRESS ): ADDRESS;
+	
 	chdir-			: PROCEDURE {C} ( name: ADDRESS ): LONGINT;
 	chdir-			: PROCEDURE {C} ( name: ADDRESS ): LONGINT;
 	mkdir-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	mkdir-		: PROCEDURE {C} ( name: ADDRESS;  mode: SET ): LONGINT;
 	rmdir-			: PROCEDURE {C} ( path: ADDRESS ): LONGINT;
 	rmdir-			: PROCEDURE {C} ( path: ADDRESS ): LONGINT;
@@ -498,7 +499,8 @@ BEGIN
 	Dlsym( libc, "utime",		ADDRESSOF( utime ) );
 	Dlsym( libc, "utime",		ADDRESSOF( utime ) );
 	Dlsym( libc, "access",		ADDRESSOF( access ) );
 	Dlsym( libc, "access",		ADDRESSOF( access ) );
 	Dlsym( libc, "select",		ADDRESSOF( select ) );
 	Dlsym( libc, "select",		ADDRESSOF( select ) );
-
+	Dlsym( libc, "realpath",	ADDRESSOF( realpath ) );
+	
 	Dlsym( libc, "chdir",		ADDRESSOF( chdir ) );
 	Dlsym( libc, "chdir",		ADDRESSOF( chdir ) );
 	Dlsym( libc, "mkdir",		ADDRESSOF( mkdir ) );
 	Dlsym( libc, "mkdir",		ADDRESSOF( mkdir ) );
 	Dlsym( libc, "rmdir",		ADDRESSOF( rmdir ) );
 	Dlsym( libc, "rmdir",		ADDRESSOF( rmdir ) );