Jump to content

  • Log In with Google      Sign In   
  • Create Account

A GUI Makefile manager


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
11 replies to this topic

#1 bennettbugs   Members   -  Reputation: 493

Like
0Likes
Like

Posted 03 September 2013 - 04:46 PM

So from learning about makefiles, it seems that large projects have a large difficulty dealing with managing makefiles. It may not be an original idea, but its something that should likely be addressed.

 

Even though makefiles are supposedly made to be easy, I'm sure there are people out there who would rather use a GUI to manage tens of hundreds of files in a minute or two rather than spending the day sorting and managing makefiles.

 

So the concept is simple, and so is the implementation. If there is anyone out there who also thinks one should be made, please comment.

 

PS: Also if there is such a program, feel free to post it.



Sponsor:

#2 SiCrane   Moderators   -  Reputation: 9593

Like
1Likes
Like

Posted 03 September 2013 - 04:59 PM

Pretty much every IDE does the moral equivalent. Many will even specifically generate makefiles from their project files.



#3 bennettbugs   Members   -  Reputation: 493

Like
0Likes
Like

Posted 03 September 2013 - 05:33 PM

Pretty much every IDE does the moral equivalent. Many will even specifically generate makefiles from their project files.

 

What I was thinking of was a standalone application - perhaps someone uses a strange text editor that does just that: edits text. If someone needed to build a large application with their favorite text editor, they would be at a loss. 

 

How I imagine it is that someone could use this tool regardless of what else they were using, so that the efficiency of an IDE compiler is not attached to a separate utility.



#4 BitMaster   Crossbones+   -  Reputation: 4070

Like
1Likes
Like

Posted 04 September 2013 - 03:10 AM

In general I have found implementing a GUI to do more complex tasks gets extremely complicated. Both in terms of implementing it in the first place and having people use it because the usage will definitely not be very intuitive.

Before you sink a lot of time into such an idea, you might want to investigate tools like CMake. Not only do they generate all your makefiles (allowing vast and difficult changes with a bit of planning), they also generate project files for other IDEs (for example MSVC solutions/projects).

#5 wintertime   Members   -  Reputation: 1686

Like
0Likes
Like

Posted 04 September 2013 - 03:10 AM

Such a functionality is helpful, but seeing that people who would use such a program would probably already use an IDE which include the same functionality (though with their own incompatible project file format) there is only a fraction of people who would use it.

Then there is the problem of parsing externally modified makefiles, if they are slightly different then those produced by your click-together-GUI. That would make everyone need to download/install your program if they want to work with someone else who uses it.

I think thats why there are many incompatible types of meta makefiles/project files which are sometimes not much easier to edit, which can sometimes get converted to standard makefiles. Switching all together to an easier makefile format would maybe help, for example if everyone was suddenly using rake, but any new make program does not get enough people for the network effect to kick in and completely replace old make.

http://en.wikipedia.org/wiki/List_of_build_automation_software



#6 bennettbugs   Members   -  Reputation: 493

Like
0Likes
Like

Posted 04 September 2013 - 08:52 AM

That would make everyone need to download/install your program if they want to work with someone else who uses it.

 
The program would use the first makefile (supposedly the master makefile) as its base. It would also follow the specifications for a makefile, so anyone who used the GUI could still edit it from a text editor.
 
 
 

you might want to investigate tools like CMake

 
That is near what I'm thinking of, except that you need cmake to use it's files.

Edited by bennettbugs, 04 September 2013 - 08:54 AM.


#7 RobTheBloke   Crossbones+   -  Reputation: 2342

Like
1Likes
Like

Posted 04 September 2013 - 08:54 AM

 

Pretty much every IDE does the moral equivalent. Many will even specifically generate makefiles from their project files.

 

What I was thinking of was a standalone application - perhaps someone uses a strange text editor that does just that: edits text. If someone needed to build a large application with their favorite text editor, they would be at a loss. 

 

How I imagine it is that someone could use this tool regardless of what else they were using, so that the efficiency of an IDE compiler is not attached to a separate utility.

 

 

It's called cmake :P

 

Managing project files is a bitch. You really want to use a meta-utility to handle the generation of project files for <insert you favourite IDE/compiler here>. 



#8 RobTheBloke   Crossbones+   -  Reputation: 2342

Like
0Likes
Like

Posted 04 September 2013 - 08:59 AM

The program would use the first makefile (supposedly the master makefile) as its base. It would also follow the specifications for a makefile, so anyone who used the GUI could still edit it from a text editor.

So basically, make then? That's effectively what the ndk-build/android.mk wrappers around make do with the android NDK (which are implemented entirely in make)

 

 

you might want to investigate tools like CMake

 
That is near what I'm thinking of, except that you need cmake to use it's files.

 

 

So your application would work without the application? I think I might be seeing a small flaw in your plan ;)



#9 bennettbugs   Members   -  Reputation: 493

Like
0Likes
Like

Posted 04 September 2013 - 11:59 AM

So your application would work without the application?


As in that, I meant you could run 'make' and build your application without needing to use my application.

#10 osmanb   Crossbones+   -  Reputation: 1568

Like
1Likes
Like

Posted 04 September 2013 - 12:46 PM

I think you're underestimating the complexity of what can be in a makefile. If you allow a user to hand-edit the generated makefile (or to have created the original input), then all bets are off. Depending on which version of make you're supporting, the language is turing complete. and lets you do pretty much anything. Creating a GUI that can parse/understand/edit/maintain that is not a trivial task. It's not even a difficult task - it's insane.



#11 bennettbugs   Members   -  Reputation: 493

Like
0Likes
Like

Posted 04 September 2013 - 01:58 PM

I think you're underestimating the complexity of what can be in a makefile. If you allow a user to hand-edit the generated makefile (or to have created the original input), then all bets are off. Depending on which version of make you're supporting, the language is turing complete. and lets you do pretty much anything. Creating a GUI that can parse/understand/edit/maintain that is not a trivial task. It's not even a difficult task - it's insane.


It would be insane to actually maintain the whole file. General parts of it though, like rules or commands could be taken as 'Name:Value' or input fields in the GUI. Adding files or dependencies would be mostly GUI, allowing you to select files or directories.

Edited by bennettbugs, 04 September 2013 - 01:59 PM.


#12 powerdoggame   Members   -  Reputation: 105

Like
0Likes
Like

Posted 09 September 2013 - 03:51 AM

I think a GUI makefile is very hard to read through.


more free online games at www.powerdoggames.com





Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS