mirror of
https://github.com/gnustep/apps-projectcenter.git
synced 2025-02-15 16:11:25 +00:00
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:
parent
7c094590a7
commit
eb2972f8fb
13 changed files with 78 additions and 109 deletions
14
ChangeLog
14
ChangeLog
|
@ -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:
|
||||
|
|
|
@ -32,9 +32,9 @@
|
|||
objcOptField,
|
||||
cOptField,
|
||||
ldOptField,
|
||||
installPathField,
|
||||
searchOrderScroll,
|
||||
searchOrderColumn
|
||||
searchOrderColumn,
|
||||
installDomainPopup
|
||||
);
|
||||
Super = NSObject;
|
||||
};
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -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.
|
||||
*/
|
||||
|
||||
|
|
|
@ -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]];
|
||||
|
|
|
@ -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]];
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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]]];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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]]];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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]]];
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue