summaryrefslogtreecommitdiff
path: root/sysutils/portmanager/files/patch-0.4.1_3
blob: 5a8a8ac1913e37b81b918a27403b884758db7f36 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
diff -ruN ../0.4.1_2/libMGPM/src/MGPMrUpdate.c ./libMGPM/src/MGPMrUpdate.c
--- ../0.4.1_2/libMGPM/src/MGPMrUpdate.c	Mon Dec 19 11:45:50 2005
+++ ./libMGPM/src/MGPMrUpdate.c	Wed Dec 21 22:16:31 2005
@@ -979,114 +979,29 @@
 	/************************************************************************/
 	/*			Command "9" " make"				*/
 	/************************************************************************/
-	env	= malloc( sizeof( char** ) * 4 );
-	env[0]	= malloc( MAXSTRINGSIZE );
-	env[1]	= malloc( MAXSTRINGSIZE );
-	env[2]	= malloc( MAXSTRINGSIZE );
-	env[3]	= malloc( MAXSTRINGSIZE );
-	env[4]	= 0;
-
-	/*
-	 * setup environment
-	 */
-	MGmStrcpy( env[0], "PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/X11R6/bin" );
-
-	MGmStrcpy( env[1], "TERM=" );
-	MGmStrcat( env[1], getenv( "TERM" ) );
-
-	if( getenv( "CCACHE_DIR" ) != NULL )
-	{
-		MGmStrcpy( env[2], "CCACHE_DIR=" );
-		MGmStrcat( env[2], getenv( "CCACHE_DIR" ) );
-	}
-	else
-	{
-		env[2][0]	= 0;
-	}
-
-	if( getenv( "CCACHE_PATH" ) != NULL )
-	{
-		MGmStrcpy( env[3], "CCACHE_PATH=/usr/bin:/usr/local/bin" );
-	}
-	else
-	{
-		env[3][0]	= 0;
-	}
-
+	MGmStrcpy( localProperty.command, "cd " );
+	MGmStrcat( localProperty.command, PORTSDIR );
+	MGmStrcat( localProperty.command, oldPortDir );
+	MGmStrcat( localProperty.command, " && make " );
 	if( MGrStrlen( localProperty.options ) > 0 )
 	{
-		cmd	= malloc( sizeof( char** ) * 3 );
-		cmd[0]	= malloc( MAXSTRINGSIZE );
-		cmd[1]	= malloc( MAXBUFFERSIZE );
-		cmd[2]	= 0;
-		MGmStrcpy( cmd[0], PORTSDIR );
-		MGmStrcat( cmd[0], oldPortDir );
-		if( chdir( cmd[0] ) != 0 )
-		{
-			fprintf( stderr, "%s error: chdir %s failed\n", id, cmd[0] ); 
-			perror( "chroot" );
-			while( fflush( stderr ) );
-			assert( 0 );
-		}
-		MGmStrcpy( cmd[0], "/usr/bin/make" );
-		MGmBuffercpy( cmd[1], localProperty.options, MAXBUFFERSIZE );
-		fprintf( stdout, "%s\n", SINGLE_LINES );
-		fprintf( stdout, "update %s \n", oldPortName );
-		fprintf( stdout, "%s %s command: #9 of 14  %s\nOPTIONS-=>%s\n", id, PACKAGE_VERSION, cmd[0], cmd[1] );
-		fprintf( stdout, "%s\n", SINGLE_LINES );
-		while( fflush( stdout ) );
-		MGmSystem( cmd, env );	
-		free( cmd[0] );
-		free( cmd[1] );
-		free( cmd );
-	}
-	else
-	{
-		cmd	= malloc( sizeof( char** ) * 2 );
-		cmd[0]	= malloc( MAXSTRINGSIZE );
-		cmd[1]	= 0;
-		MGmStrcpy( cmd[0], PORTSDIR );
-		MGmStrcat( cmd[0], oldPortDir );
-		if( chdir( cmd[0] ) != 0 )
-		{
-			fprintf( stderr, "%s error: chdir %s failed\n", id, cmd[0] ); 
-			perror( "chroot" );
-			while( fflush( stderr ) );
-			assert( 0 );
-		}
-		MGmStrcpy( cmd[0], "/usr/bin/make" );
-		fprintf( stdout, "%s\n", SINGLE_LINES );
-		fprintf( stdout, "update %s \n", oldPortName );
-		fprintf( stdout, "%s %s command: #9 of 14  %s\n", id, PACKAGE_VERSION, cmd[0] );
-		fprintf( stdout, "%s\n", SINGLE_LINES );
-		while( fflush( stdout ) );
-		MGmSystem( cmd, env );	
-		free( cmd[0] );
-		free( cmd );
+		MGmStrcat( localProperty.command, localProperty.options );
 	}
 
-	if( MGrIfDirEntry( localProperty.workFullPath, ".build_done" ) == 0 )
+	fprintf( stdout, "%s\n", SINGLE_LINES );
+	fprintf( stdout, "update %s \n", oldPortName );
+	fprintf( stdout, "%s %s command: #9 of 14  %s\n", id, PACKAGE_VERSION, localProperty.command );
+	fprintf( stdout, "%s\n", SINGLE_LINES );
+	while( fflush( stdout ) );
+	if( ( errorCode = system(localProperty.command) ) )
 	{
-		fprintf( stderr, "%s\n", SINGLE_LINES );
-		fprintf( stderr, "%s error:  %s %s failed during make, adding to ignore.db\n", id, oldPortName, oldPortDir );
-		fprintf( stderr, "%s\n", SINGLE_LINES );
-		while( fflush( stderr ) );
-		MGPMlogAdd( property, oldPortName, oldPortDir, "port failed to build during make, adding to ignore.db", " ",  " " );
-		MGdbAdd( property->ignoreDb, oldPortDir, "port failed to build during make\n", NULL );
+		MGPMlogAdd( property, oldPortName, oldPortDir, "failed during make, adding to ignore.db", " ", " " );
+		fprintf( stdout, "%s %s error: make returned an error, adding %s to ignore.db\n", id, PACKAGE_VERSION, oldPortDir );
+		while( fflush( stdout ) );
+		MGdbAdd( property->ignoreDb, oldPortDir, "failed during make", NULL );
 		rCleanUp( property, &localProperty );
-		free( env[0] );
-		free( env[1] );
-		free( env[2] );
-		free( env );
 		return(0);
 	}
-
-	free( env[0] );
-	free( env[1] );
-	free( env[2] );
-	free( env[3] );
-	free( env );
-
 	/************************************************************************/
 	/*			Command "10" pkg_create -b			*/
 	/************************************************************************/