Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Makefile rules build and install are mixed and confused #29

Closed
ryukinix opened this issue Oct 2, 2016 · 27 comments
Closed

Makefile rules build and install are mixed and confused #29

ryukinix opened this issue Oct 2, 2016 · 27 comments

Comments

@ryukinix
Copy link
Member

ryukinix commented Oct 2, 2016

This is very annoying. The build triggers are getting sudo permissions to modify the OS filesystem on building the brain compiler.

I think it is better move all the statements for linking/creating libraries, move binaries and other stuffs to install trigger and keep build rule to just... build.

This is really more simple and clear.

So the INSTALL process will be:

make
sudo make install

I'm really angry about that, because I'm pain with the idiomatic way to build packages on ArchLinux don't allow to modify the OS before build the package. All the files need be put a sandbox, so after compressed, the system get all the files whose will be inserted on operating system and that way we can know exactly the files installed after it. That way is very simple remove the package.

Yes, it's very bad.

photo_2016-10-01_22-44-59

@luizperes
Copy link
Member

Thanks for you comment @ryukinix, I actually felt the same way! I will change it for sure. At first I was trying to include the Brain compiler with the LLVM folder for front end, but I think that I will switch it with the local path. What do you think?

@luizperes
Copy link
Member

@rafaelcn

@ryukinix ryukinix changed the title Makefile build and install triggers mix-up and confuse Makefile triggers build and install mixed and confused Oct 2, 2016
@rafaelcn
Copy link
Collaborator

rafaelcn commented Oct 2, 2016

I agree, but what do you mean by local path @luizperes? usr/local/?

@luizperes
Copy link
Member

Actually, @rafaelcn, I was thinking about something else. What do you think about ~/.local/?

@rafaelcn
Copy link
Collaborator

rafaelcn commented Oct 3, 2016

Great, looks good. I'd place it on: ~/.local/lib/brain/io.ll.

@ryukinix
Copy link
Member Author

ryukinix commented Oct 6, 2016

You can make this in next release? By the way, would be really if a full changelog been wrote in the next release and so on.

thanks. i'm wating for that fix to reduce the pain of my Obsessive Compulsive Disorder.

@luizperes
Copy link
Member

I will certainly do it @ryukinix!! No problem! I have the same problem (that was actually bothering me for a long time too)

@rafaelcn rafaelcn added this to the 1.1 milestone Oct 7, 2016
@luizperes luizperes removed this from the 1.1 milestone Dec 2, 2016
@luizperes
Copy link
Member

taking off milestone 1.1

@ryukinix
Copy link
Member Author

ryukinix commented Dec 2, 2016

@luizperes credo

@luizperes
Copy link
Member

I might put it back, @ryukinix :P

@luizperes luizperes added this to the 1.1 milestone Dec 6, 2016
@luizperes
Copy link
Member

I believe I fixed it here @ryukinix . Could you check it please?

@rafaelcn
Copy link
Collaborator

rafaelcn commented Dec 6, 2016

What do you think of placing it inside $HOME/.local/lib/... instead of the plain home folder @luizperes?

@luizperes
Copy link
Member

isn't it on ~/local/lib?... or you want to put it there for a reason? //(omit the libraries)?

@rafaelcn
Copy link
Collaborator

rafaelcn commented Dec 6, 2016

Ops, my bad. Edited the comment, can you please take a second look?

@luizperes
Copy link
Member

As talked to you on chat, I will leave it on: $HOME/.brain/lib, ok?

@luizperes
Copy link
Member

That was done here

@ryukinix
Copy link
Member Author

ryukinix commented Dec 9, 2016

keep build just... to build.

@luizperes
Copy link
Member

Hi @ryukinix ! Thanks for the hint! I'm reopening this issue!

@luizperes luizperes reopened this Dec 9, 2016
@luizperes
Copy link
Member

Done

rafaelcn pushed a commit to rafaelcn/brain that referenced this issue Feb 7, 2017
@luizperes
Copy link
Member

This shit is not good enough xD

@luizperes luizperes reopened this Oct 21, 2017
@ryukinix
Copy link
Member Author

libs/install.sh this file is evil.

Please, build the binary without the need to modify the operating system, injecting files or whatever be.

@rafaelcn
Copy link
Collaborator

Well, should it ask for the user if he wants to install in a pre defined folder <folder> or just build the lib and brain in bin?

@ryukinix
Copy link
Member Author

Questions on makefile build no... :( there is no way to build without modifying the system? Build is just to build, for modify we already have the install rule....

@ryukinix
Copy link
Member Author

ryukinix commented Oct 27, 2017

Well, should it ask for the user if he wants to install in a pre defined folder or just build the lib and brain in bin?

I think anything about that should be only related to make install. And I think that making questions on makefile is not a good idea. Brakes automation. You can just do that by specifying params, overridden variables of make. make PREFIX=/usr install and so on...

@ryukinix ryukinix changed the title Makefile triggers build and install mixed and confused Makefile rules build and install are mixed and confused Oct 27, 2017
@rafaelcn
Copy link
Collaborator

Well, you got the point. I wasn't referring to it in the make build, I was talking about make install. But you got a point, we can change the prefix to change installation binaries, this issue will be put on hold as me and @luizperes are talking about merge the io/math library in Brain itself.

@luizperes
Copy link
Member

initial external scripts should die! :D

(if the user wants to extend Brain using external libraries will be still possible, but all the dependencies to clang (not clang++_) should be removed!

@ryukinix
Copy link
Member Author

ryukinix commented Jan 3, 2019

Closed due lack of activity (> year 1).

@ryukinix ryukinix closed this as completed Jan 3, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment