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

Provide a "stripped" gcc 4.7.2 spkg #13913

Closed
jpflori opened this issue Jan 5, 2013 · 20 comments
Closed

Provide a "stripped" gcc 4.7.2 spkg #13913

jpflori opened this issue Jan 5, 2013 · 20 comments

Comments

@jpflori
Copy link

jpflori commented Jan 5, 2013

GCC does not provide separates tarball for each languages for the 4.7.x releases, so we have to cook our own if we do not want to include ADA, GO, JAVA, OBJC...

Try the spkg at http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.7.2.p0.spkg

The stripped src dir can be produced using the spkg-src provided in the spkg.

CC: @jdemeyer

Component: packages: optional

Keywords: spkg gcc

Author: Jeroen Demeyer

Reviewer: Jean-Pierre Flori

Issue created by migration from https://trac.sagemath.org/ticket/13913

@jpflori jpflori added this to the sage-5.6 milestone Jan 5, 2013
@jpflori
Copy link
Author

jpflori commented Jan 7, 2013

comment:1

Not sure we should really get rid of the testsuites dir, but gcc, g++ and gfortran (seem to) build without it.

@jpflori

This comment has been minimized.

@jpflori
Copy link
Author

jpflori commented Jan 7, 2013

Author: Jean-Pierre Flori

@jdemeyer
Copy link

jdemeyer commented Jan 7, 2013

comment:2

Wow, we both had almost exactly the same idea.

@jdemeyer
Copy link

jdemeyer commented Jan 7, 2013

comment:3

My spkg: http://boxen.math.washington.edu/home/jdemeyer/spkg/gcc-4.7.2.p0.spkg (also removed Link Time Optimization and Native Language Support).

My spkg-src script (don't call it spkg-dist as that is really meant for scripts which create a spkg):

#!/bin/sh
# Remove some unneeded pieces from GCC, after downloading and
# extracting the sources and renaming the directory to src/.

cd src || exit $?

rm MD5SUMS
rm -r maintainer-scripts

# Remove zlib, since Sage already ships with zlib
# and we build GCC with --with-system-zlib.
rm -r zlib

# Remove Native Language Support
rm -r gcc/po libcpp/po

# Remove support for Link Time Optimization
rm -r lto-plugin

# Remove all files for languages other than C, C++, Fortran.
rm -r libada gnattools libgo libffi libjava boehm-gc libobjc
cd gcc
rm -r ada go java objc objcp testsuite

@jdemeyer
Copy link

jdemeyer commented Jan 7, 2013

comment:4

Not sure whether we should remove libitm (although currently nothing in Sage uses this feature).

@jdemeyer
Copy link

jdemeyer commented Jan 8, 2013

comment:5

Let's be conservative and keep LTO and ITM. I really see no need for Native Language Support, so I'd remove that.

@jdemeyer

This comment has been minimized.

@jdemeyer
Copy link

jdemeyer commented Jan 8, 2013

Spkg diff, for review only.

@jdemeyer
Copy link

jdemeyer commented Jan 8, 2013

comment:7

Attachment: gcc-4.7.2.p0.diff.gz

Jean-Pierre, could you review my package please?

@jpflori
Copy link
Author

jpflori commented Jan 8, 2013

comment:8

Replying to @jdemeyer:

Let's be conservative and keep LTO and ITM. I really see no need for Native Language Support, so I'd remove that.

Just a random thought about NLS, shouldn't we try to remove it from as many spkg as possible?
Or is it actually used or necessary somewhere?

@jdemeyer
Copy link

jdemeyer commented Jan 8, 2013

comment:9

Replying to @jpflori:

Just a random thought about NLS, shouldn't we try to remove it from as many spkg as possible?

It could be done I guess. Except of course for user-facing packages, i.e. packages where the user is likely to see the output of. I know there are some efforts to internationalize the Sage Notebook for example.

@jpflori
Copy link
Author

jpflori commented Jan 8, 2013

comment:10

Little remark: do we need the intl directory?
I guess this is NLS related and in the end is not used because of the --disable-nls flag.
I've just built without it and everything seems fine.
(Without it the --disable-nls flag should not be that useful but let's keep it in anyway.)

@jdemeyer
Copy link

jdemeyer commented Jan 8, 2013

comment:11

Replying to @jpflori:

Little remark: do we need the intl directory?

I'm not entirely sure that it's not needed. It contains gettext library, needed for internationalization. I don't know whether --disable-nls truly disables the use of gettext. The fact that it works on your system might be because your system already has gettext. To be on the safe side, I would keep intl, it's only 100K compressed anyway.

@jpflori
Copy link
Author

jpflori commented Jan 8, 2013

Reviewer: Jean-Pierre Flori

@jpflori
Copy link
Author

jpflori commented Jan 8, 2013

Changed author from Jean-Pierre Flori to Jeroen Demeyer

@jpflori
Copy link
Author

jpflori commented Jan 8, 2013

comment:12

Replying to @jdemeyer:

Replying to @jpflori:

Little remark: do we need the intl directory?

I'm not entirely sure that it's not needed. It contains gettext library, needed for internationalization. I don't know whether --disable-nls truly disables the use of gettext. The fact that it works on your system might be because your system already has gettext. To be on the safe side, I would keep intl, it's only 100K compressed anyway.

Agreed.

@jpflori
Copy link
Author

jpflori commented Jan 8, 2013

comment:13

(But if you wanna test it, I feel it should work without intl as well, not even using system stuff if you don't push configure to do it from what I quickly saw in configure's, makefiles and m4 macros.)

@haraldschilly
Copy link
Member

comment:15

optional spkg is updated!

@jpflori
Copy link
Author

jpflori commented Feb 12, 2013

comment:16

Cannot locate the spkg on sage website or on mirrors.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants