Set, use and create makefiles using ain installation DOMAIN and not a director

git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/apps/projectcenter/trunk@31688 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
Riccardo Mottola 2010-11-28 21:38:53 +00:00
parent 7c094590a7
commit eb2972f8fb
13 changed files with 78 additions and 109 deletions

View file

@ -1,3 +1,17 @@
2010-11-28 Riccardo MOttola
* Framework/PCMakefileFactory.m
* Framework/PCProjectBuilder.m
* Framework/PCProjectInspector.m
* Framework/English.lproj/BuildAttributes.gorm
* Modules/Projects/Application/PCAppProject.m
* Modules/Projects/ResourceSet/PCResourceSetProject.m
* Modules/Projects/Bundle/PCBundleProject.m
* Modules/Projects/Tool/PCToolProject.m
* Headers/ProjectCenter/PCDefines.h
* Headers/ProjectCenter/PCProjectInspector.h:
Set, use and create makefiles using ain installation DOMAIN and not a directory.
2010-11-24 German Arias <german@xelalug.org>
* Headers/ProjectCenter/PCProjectInspector.h:
* Framework/PCProjectInspector.m:

View file

@ -32,9 +32,9 @@
objcOptField,
cOptField,
ldOptField,
installPathField,
searchOrderScroll,
searchOrderColumn
searchOrderColumn,
installDomainPopup
);
Super = NSObject;
};

View file

@ -1,7 +1,7 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2002-2004 Free Software Foundation
Copyright (C) 2002-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
@ -67,7 +67,7 @@ static PCMakefileFactory *_factory = nil;
NSString *buildDir = [prefs stringForKey:RootBuildDirectory];
NSString *prName = [project projectName];
NSString *buildName = [prName stringByAppendingPathExtension: @"build"];
NSString *instDir = [[project projectDict] objectForKey:PCInstallDir];
NSString *instDomain = [[project projectDict] objectForKey:PCInstallDomain];
NSAssert(prName, @"No project name given!");
@ -90,18 +90,18 @@ static PCMakefileFactory *_factory = nil;
[mfile appendString: @" before compiling!)\n"];
[mfile appendString: @"endif\n"];
if ([instDir isEqualToString: @"LOCAL"]
|| [instDir isEqualToString: @"SYSTEM"]
|| [instDir isEqualToString: @"USER"]
|| [instDir isEqualToString: @"NETWORK"])
if ([instDomain isEqualToString: @"LOCAL"]
|| [instDomain isEqualToString: @"SYSTEM"]
|| [instDomain isEqualToString: @"USER"]
|| [instDomain isEqualToString: @"NETWORK"])
{
[mfile appendString:
[NSString stringWithFormat: @"\nGNUSTEP_INSTALLATION_DOMAIN = %@\n",
instDir]];
instDomain]];
}
/* If GNUSTEP_INSTALLATION_DOMAIN was not set explicitly by the
* user, it shoudl not be specified; gnustep-make will use the
* user, it should not be specified; gnustep-make will use the
* default - normally, but not necessarily, LOCAL.
*/

View file

@ -1,10 +1,11 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2000-2004 Free Software Foundation
Copyright (C) 2000-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
Riccardo Mottola
This file is part of GNUstep.
@ -322,17 +323,16 @@
- (NSArray *)buildArguments
{
NSDictionary *projectDict = [project projectDict];
NSString *instDir = [projectDict objectForKey:PCInstallDir];
NSString *instDomain = [projectDict objectForKey:PCInstallDomain];
NSMutableArray *args = [NSMutableArray new];
if (![instDir isEqualToString:@"LOCAL"] &&
![instDir isEqualToString:@"SYSTEM"] &&
![instDir isEqualToString:@"USER"] &&
![instDir isEqualToString:@"NETWORK"] &&
![instDir isEqualToString:@""] &&
([instDir isAbsolutePath] || [instDir characterAtIndex:0] == '$'))
if (![instDomain isEqualToString:@"LOCAL"] &&
![instDomain isEqualToString:@"SYSTEM"] &&
![instDomain isEqualToString:@"USER"] &&
![instDomain isEqualToString:@"NETWORK"] &&
![instDomain isEqualToString:@""])
{
[args addObject:[NSString stringWithFormat:@"DESTDIR=%@", instDir]];
[args addObject:[NSString stringWithFormat:@"INSTDOMAIN=%@", instDomain]];
}
[args addObjectsFromArray:[projectDict objectForKey:PCBuilderArguments]];

View file

@ -1,10 +1,11 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2000-2009 Free Software Foundation
Copyright (C) 2000-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
Riccardo Mottola
This file is part of GNUstep.
@ -182,9 +183,9 @@
NSString *newEntry = [sender stringValue];
// Build Atributes
if (sender == installPathField)
if (sender == installDomainPopup)
{
[project setProjectDictObject:newEntry forKey:PCInstallDir notify:YES];
[project setProjectDictObject:newEntry forKey:PCInstallDomain notify:YES];
}
else if (sender == cppOptField)
{
@ -320,8 +321,8 @@
[projectDict objectForKey:PCCompilerOptions]];
[ldOptField setStringValue:
[projectDict objectForKey:PCLinkerOptions]];
[installPathField setStringValue:
[projectDict objectForKey:PCInstallDir]];
[installDomainPopup selectItemWithTitle:
[projectDict objectForKey:PCInstallDomain]];
// Project Attributes
[projectTypeField setStringValue:[projectDict objectForKey:PCProjectType]];

View file

@ -1,7 +1,7 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2000-2004 Free Software Foundation
Copyright (C) 2000-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
@ -142,7 +142,7 @@ static NSString * const PCBuildTool = @"BUILDTOOL";
static NSString * const PCCompilerOptions = @"COMPILEROPTIONS";
static NSString * const PCPreprocessorOptions = @"CPPOPTIONS";
static NSString * const PCCreationDate = @"CREATION_DATE";
static NSString * const PCInstallDir = @"INSTALLDIR";
static NSString * const PCInstallDomain = @"INSTALLDOMAIN";
static NSString * const PCLinkerOptions = @"LINKEROPTIONS";
static NSString * const PCObjCCompilerOptions = @"OBJC_COMPILEROPTIONS";
static NSString * const PCPrincipalClass = @"PRINCIPAL_CLASS";

View file

@ -1,10 +1,11 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2000-2004 Free Software Foundation
Copyright (C) 2000-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
Riccardo Mottola
This file is part of GNUstep.
@ -61,7 +62,7 @@
IBOutlet NSTextField *objcOptField;
IBOutlet NSTextField *cOptField;
IBOutlet NSTextField *ldOptField;
IBOutlet NSTextField *installPathField;
IBOutlet NSPopUpButton *installDomainPopup;
IBOutlet NSTextField *toolField;
// Project Attributes

View file

@ -1,10 +1,11 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2001-2004 Free Software Foundation
Copyright (C) 2001-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
Riccardo Mottola
This file is part of GNUstep.
@ -515,48 +516,28 @@
- (void)appendHead:(PCMakefileFactory *)mff
{
NSString *installDir = [projectDict objectForKey:PCInstallDir];
NSString *installDomain = [projectDict objectForKey:PCInstallDomain];
[mff appendString:@"\n#\n# Application\n#\n"];
[mff appendString:[NSString stringWithFormat:@"VERSION = %@\n",
[projectDict objectForKey:PCRelease]]];
[projectDict objectForKey:PCRelease]]];
[mff appendString:
[NSString stringWithFormat:@"PACKAGE_NAME = %@\n", projectName]];
[NSString stringWithFormat:@"PACKAGE_NAME = %@\n", projectName]];
[mff appendString:
[NSString stringWithFormat:@"APP_NAME = %@\n", projectName]];
[NSString stringWithFormat:@"APP_NAME = %@\n", projectName]];
[mff appendString:[NSString stringWithFormat:@"%@_APPLICATION_ICON = %@\n",
projectName, [projectDict objectForKey:PCAppIcon]]];
projectName, [projectDict objectForKey:PCAppIcon]]];
if ([installDir isEqualToString:@""])
/* FIXME %@_COPY_INTO_DIR needs to be properly reinstantiated
as well as %@_STANDARD_INSTALL = no */
/* set the domain if it was specified */
if (!(installDomain == nil) && ![installDomain isEqualToString:@""])
{
[mff appendString:
[NSString stringWithFormat:@"%@_STANDARD_INSTALL = no\n",
projectName]];
}
else if (![installDir isEqualToString:@"LOCAL"] &&
![installDir isEqualToString:@"SYSTEM"] &&
![installDir isEqualToString:@"USER"] &&
![installDir isEqualToString:@"NETWORK"] &&
![installDir isAbsolutePath] &&
[installDir characterAtIndex:0] != '$')
{
[mff appendString:
[NSString stringWithFormat:@"%@_COPY_INTO_DIR = %@\n",
projectName, installDir]];
}
else
{
/* IMPORTANT FIXME/TODO: We should be using GNUSTEP_INSTALLATION_DOMAIN,
* not GNUSTEP_INSTALLATION_DIR. Even better, we shouldn't specify
* this in the GNUmakefile itself at all unless explicitly requested
* by the user!
*/
/*
[mff appendString:
[NSString stringWithFormat:@"GNUSTEP_INSTALLATION_DIR = %@\n",
installDir]];
*/
[NSString stringWithFormat:@"GNUSTEP_INSTALLATION_DOMAIN = %@\n",
[installDomain uppercaseString]]];
}
}

View file

@ -1,10 +1,11 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2001-2004 Free Software Foundation
Copyright (C) 2001-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
Riccardo Mottola
This file is part of GNUstep.
@ -246,7 +247,7 @@
- (void)appendHead:(PCMakefileFactory *)mff
{
NSString *installDir = [projectDict objectForKey:PCInstallDir];
NSString *installDomain = [projectDict objectForKey:PCInstallDomain];
[mff appendString:@"\n#\n# Bundle\n#\n"];
[mff appendString:[NSString stringWithFormat:@"VERSION = %@\n",
@ -260,23 +261,14 @@
[mff appendString:[NSString stringWithFormat:@"BUNDLE_EXTENSION = %@\n",
[projectDict objectForKey:PCBundleExtension]]];
if ([installDir isEqualToString:@""])
/* FIXME %@_COPY_INTO_DIR needs to be properly reinstantiated
as well as %@_STANDARD_INSTALL = no */
/* set the domain if it was specified */
if (!(installDomain == nil) && ![installDomain isEqualToString:@""])
{
[mff appendString:
[NSString stringWithFormat:@"%@_STANDARD_INSTALL = no\n",
projectName]];
}
else if (![installDir isAbsolutePath] &&
[installDir characterAtIndex:0] != '$')
{
[mff appendString:
[NSString stringWithFormat:@"%@_COPY_INTO_DIR = %@\n",
projectName, installDir]];
}
else
{
[mff appendString:[NSString stringWithFormat:@"BUNDLE_INSTALL_DIR = %@\n",
installDir]];
[NSString stringWithFormat:@"GNUSTEP_INSTALLATION_DOMAIN = %@\n", [installDomain uppercaseString]]];
}
}

View file

@ -1,7 +1,7 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2004 Free Software Foundation
Copyright (C) 2004-2010 Free Software Foundation
Authors: Serg Stoyan
@ -190,7 +190,7 @@
projectName]];
[mff appendString:
[NSString stringWithFormat:@"@%RESOURCE_FILES_INSTALL_DIR = %@\n",
[projectDict objectForKey:PCInstallDir]]];
[projectDict objectForKey:PCInstallDomain]]];
}
- (void)appendTail:(PCMakefileFactory *)mff

View file

@ -1,10 +1,11 @@
/*
GNUstep ProjectCenter - http://www.gnustep.org/experience/ProjectCenter.html
Copyright (C) 2001-2004 Free Software Foundation
Copyright (C) 2001-2010 Free Software Foundation
Authors: Philippe C.D. Robert
Serg Stoyan
Riccardo Mottola
This file is part of GNUstep.
@ -343,7 +344,7 @@
- (void)appendHead:(PCMakefileFactory *)mff
{
NSString *installDir = [projectDict objectForKey:PCInstallDir];
NSString *installDomain = [projectDict objectForKey:PCInstallDomain];
[mff appendString:@"\n#\n# Tool\n#\n"];
[mff appendString:[NSString stringWithFormat:@"VERSION = %@\n",
@ -355,35 +356,14 @@
[mff appendString:[NSString stringWithFormat:@"%@_TOOL_ICON = %@\n",
projectName, [projectDict objectForKey:PCToolIcon]]];
if ([installDir isEqualToString:@""])
/* FIXME %@_COPY_INTO_DIR needs to be properly reinstantiated
as well as %@_STANDARD_INSTALL = no */
/* set the domain if it was specified */
if (!(installDomain == nil) && ![installDomain isEqualToString:@""])
{
[mff appendString:
[NSString stringWithFormat:@"%@_STANDARD_INSTALL = no\n",
projectName]];
}
else if (![installDir isEqualToString:@"LOCAL"] &&
![installDir isEqualToString:@"SYSTEM"] &&
![installDir isEqualToString:@"USER"] &&
![installDir isEqualToString:@"NETWORK"] &&
![installDir isAbsolutePath] &&
[installDir characterAtIndex:0] != '$')
{
[mff appendString:
[NSString stringWithFormat:@"%@_COPY_INTO_DIR = %@\n",
projectName, installDir]];
}
else
{
/* IMPORTANT FIXME/TODO: We should be using GNUSTEP_INSTALLATION_DOMAIN,
* not GNUSTEP_INSTALLATION_DIR. Even better, we shouldn't specify
* this in the GNUmakefile itself at all unless explicitly requested
* by the user!
*/
/*
[mff appendString:
[NSString stringWithFormat:@"GNUSTEP_INSTALLATION_DIR = %@\n",
installDir]];
*/
[NSString stringWithFormat:@"GNUSTEP_INSTALLATION_DOMAIN = %@\n",[installDomain uppercaseString]]];
}
}