mirror of
https://github.com/gnustep/tools-make.git
synced 2025-04-23 22:33:28 +00:00
* Instance/framework.make: Add top-level symlink for all darwin
* ld_lib_path.sh: Clarify framework comment. * Documentation/machines.texi: Update * Documentation/README.NetBSD: Remove, obsolete. git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/tools/make/trunk@21111 72102866-910b-0410-8b05-ffd578937521
This commit is contained in:
parent
ba5dd636e3
commit
149d63b6b1
5 changed files with 67 additions and 344 deletions
|
@ -1,3 +1,11 @@
|
|||
2005-04-15 Adam Fedor <fedor@gnu.org>
|
||||
|
||||
* Instance/framework.make: Add top-level symlink for all darwin
|
||||
* ld_lib_path.sh: Clarify framework comment.
|
||||
|
||||
* Documentation/machines.texi: Update
|
||||
* Documentation/README.NetBSD: Remove, obsolete.
|
||||
|
||||
2005-04-06 Nicola Pero <n.pero@mi.flashnet.it>
|
||||
|
||||
* GNUstep.conf (USER_GNUSTEP_RC): Fixed typo, it was spelt
|
||||
|
|
|
@ -1,311 +0,0 @@
|
|||
Installing GNUstep on NetBSD
|
||||
|
||||
(C) 2001 JNQT <jnqt@fbe.freeserve.ne.jp>
|
||||
|
||||
Last update: 24 November 2001
|
||||
|
||||
I have installed GNUstep on NetBSD/i386 1.5.2.
|
||||
I will not be responsible for any damage implicitly or explicitly
|
||||
caused by this information. Use at your own risk.
|
||||
Please submit any comments or suggestions to jnqt@fbe.freeserve.ne.jp.
|
||||
For more information about installation, see the `GNUstep-HOWTO' file
|
||||
located in the gnustep-make package.
|
||||
|
||||
Good Luck! :-)
|
||||
|
||||
|
||||
//
|
||||
// Install GNUstep
|
||||
//
|
||||
|
||||
|
||||
su root
|
||||
|
||||
|
||||
[Add `/etc/ld.so.conf']
|
||||
/usr/local/lib
|
||||
/usr/X11R6/lib
|
||||
|
||||
|
||||
ldconfig
|
||||
|
||||
|
||||
[Use the NetBSD packages collection...Install `/usr/local']
|
||||
gcc-2.95.2
|
||||
gmake-3.79.1
|
||||
libiconv-1.6.1
|
||||
libxml2-2.4.6
|
||||
tiff-3.5.5
|
||||
|
||||
|
||||
rehash
|
||||
|
||||
|
||||
alias gmake gmake CC=/usr/local/gcc-2.95.2/bin/cc CPP=/usr/local/gcc-2.95.2/bin/cpp
|
||||
|
||||
|
||||
tar zxvf ffcall-1.8b.tar.gz
|
||||
cd ffcall-1.8b
|
||||
./configure --prefix=/usr
|
||||
gmake
|
||||
gmake check
|
||||
gmake install
|
||||
|
||||
|
||||
tar zxvf gnustep-make-1.0.0.tar.gz
|
||||
cd gnustep-make-1.0.0
|
||||
./configure --prefix=/usr/local/GNUstep
|
||||
gmake
|
||||
gmake install
|
||||
gmake distclean
|
||||
|
||||
|
||||
source /usr/local/GNUstep/System/Library/Makefiles/GNUstep.csh
|
||||
|
||||
|
||||
tar zxvf gnustep-objc-1.0.1.tar.gz
|
||||
cd gnustep-objc-1.0.1
|
||||
|
||||
[Edit `./GNUmakefile' Line:39]
|
||||
THREADING = posix -> THREADING = single
|
||||
|
||||
gmake
|
||||
gmake install
|
||||
|
||||
|
||||
cd gnustep-make-1.0.0
|
||||
./configure
|
||||
gmake
|
||||
gmake install
|
||||
|
||||
|
||||
tar zxvf gnustep-base-1.0.0.tar.gz
|
||||
cd gnustep-base-1.0.0
|
||||
|
||||
ln -s /usr/local/bin/xml2-config /usr/local/bin/xml-config
|
||||
./configure --with-xml-prefix=/usr/local --with-libiconv-library=/usr/local/lib
|
||||
|
||||
gmake
|
||||
|
||||
[Ahhh...Error...and Edit `./Source/dynamic-load.h' Line:94]
|
||||
sym = dlsym(RTLD_NEXT, symbol); -> sym = dlsym(handle, symbol);
|
||||
|
||||
gmake
|
||||
gmake install
|
||||
|
||||
|
||||
tar zxvf gnustep-gui-0.6.8.tar.gz
|
||||
cd gnustep-gui-0.6.8
|
||||
./configure
|
||||
gmake
|
||||
gmake install
|
||||
|
||||
|
||||
tar zxvf gnustep-xgps-0.6.8.tar.gz
|
||||
cd gnustep-xgps-0.6.8
|
||||
./configure
|
||||
gmake
|
||||
gmake install
|
||||
|
||||
|
||||
mkdir ~/GNUstep
|
||||
|
||||
|
||||
[Add `/etc/rc.local']
|
||||
if [ -f /usr/local/GNUstep/System/Tools/ix86/netbsdelf1.5.2/gdomap ]; then
|
||||
/usr/local/GNUstep/System/Tools/ix86/netbsdelf1.5.2/gdomap
|
||||
fi
|
||||
|
||||
|
||||
[Add `~/.cshrc']
|
||||
setenv GNUSTEP_TZ Japan
|
||||
source /usr/local/GNUstep/System/Library/Makefiles/GNUstep.csh
|
||||
if (`gdomap -L GDNCServer | grep -c Found` == '0') then
|
||||
echo 'Starting GNUstep services.'
|
||||
gdnc
|
||||
gpbs
|
||||
endif
|
||||
alias gmake gmake CC=/usr/local/gcc-2.95.2/bin/cc CPP=/usr/local/gcc-2.95.2/bin/cpp
|
||||
|
||||
|
||||
reboot
|
||||
|
||||
|
||||
//
|
||||
// e.g. Install CurrencyConverter(in the GNUstep examples)
|
||||
//
|
||||
|
||||
|
||||
su root
|
||||
|
||||
|
||||
tar zxvf gustep-examples-0.9.2.tar.gz
|
||||
cd gustep-examples-0.9.2/gui/CurrencyConverter
|
||||
gmake
|
||||
gmake install
|
||||
|
||||
|
||||
startx
|
||||
|
||||
|
||||
openapp CurrencyConverter.app
|
||||
|
||||
|
||||
(http://hp.vector.co.jp/authors/VA019253/step/inst.html)
|
||||
|
||||
|
||||
=========================================================================
|
||||
Older, partially obsolete information Below:
|
||||
=========================================================================
|
||||
|
||||
|
||||
This information is provided by Turbocat's Development.
|
||||
We do not make any guarantees as to the currency, accuracy,
|
||||
or quality of information stored here. Use at your own risk.
|
||||
Please submit any comments to info@turbocat.de or the GNUstep maintainers.
|
||||
|
||||
---
|
||||
|
||||
Hi folks,
|
||||
|
||||
we have installed GS on NetBSD 1.5 (intel) and this is what we did:
|
||||
|
||||
pkg_add means, we have the pkg from the NetBSD package collection.
|
||||
|
||||
1.) gnumake: pkg_add gmake-3.79.1.tgz
|
||||
2.) libiconv: pkg_add libiconv-1.5.tgz
|
||||
3.) libxml:
|
||||
./configure
|
||||
|
||||
in Makefile: Add the following lines:
|
||||
|
||||
INLCUDES = -I. -I/usr/local/include -I/usr/pkg/include
|
||||
LDFLAGS = -L/usr/pkg/lib -liconv
|
||||
|
||||
|
||||
make
|
||||
su
|
||||
make install
|
||||
|
||||
4.) ffcall-1.6b: ./configure
|
||||
make
|
||||
make check
|
||||
su
|
||||
make install
|
||||
|
||||
5.) pth-1.3.7: ./configure --enable-pthread --enable-syscall-soft
|
||||
make
|
||||
make test
|
||||
su
|
||||
make install
|
||||
[for removing 'make uninstall']
|
||||
|
||||
5.1) cd /usr/lib
|
||||
ar -dv libobjc_p.a NXConstStr.po
|
||||
ar -dv libobjc_pic.a NXConstStr.so
|
||||
ar -dv libobjc.a NXConstStr.o
|
||||
rm libobjc.so.0.0
|
||||
|
||||
6.) core/make: #. Version <-- disable Version
|
||||
./configure --prefix=/usr/GNUstep
|
||||
gmake
|
||||
su
|
||||
gmake install
|
||||
|
||||
File : /usr/GNUstep/System/Library/Makefiles/framework.make
|
||||
change ine: with ... {if($$2 == "R") ...
|
||||
in ... {if($$2 == "D") ...
|
||||
|
||||
|
||||
7.) core/base: source /usr/GNUstep/System/Library/Makefiles/GNustep.csh
|
||||
|
||||
./configure --prefix=/usr/GNUstep
|
||||
|
||||
File: GSFormat.m include <wchar.h> <-- ADD
|
||||
(unichar *)strerror(save_errno); <- REPLACED
|
||||
__strerror_r
|
||||
File: NSCoder.m LINE 372: remove ";"
|
||||
LINE 373, 374 :
|
||||
return ((((GNU... + 0) * 100
|
||||
+ GNU.. + 0) * 100) + GNU... + 0;
|
||||
|
||||
File:dynamic-load.h Zeile 93: // sym = dlsym(RTLD_NEXT, symbol);
|
||||
sym = dlsym(handle, symbol);
|
||||
|
||||
gmake
|
||||
su
|
||||
gmake install
|
||||
|
||||
8.) core/gui: ./configure --prefix=/usr/GNUstep
|
||||
--with-tiff-library=/usr/pkg/lib
|
||||
--with-jpeg-library=/usr/pkg/lib
|
||||
|
||||
File: Source/SharedX/XGBitmapImageRep.m // include <config.h> <-- uncomment
|
||||
File: Source/XGBitmap.m // include <config.h> <-- uncomment
|
||||
|
||||
touch Sources/config.h
|
||||
|
||||
setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:/usr/pkg/lib"
|
||||
|
||||
gmake ADDITIONAL_INCLUDE_DIRS ="-I/usr/pkg/include
|
||||
-I../Headers"
|
||||
LDFLAGS="-L/usr/pkg/lib -ltiff -ljpeg"
|
||||
|
||||
su
|
||||
gmake install
|
||||
|
||||
9.) core/xgps: ./configure --prefix=/usr/GNUstep
|
||||
--with-tiff-library=/usr/pkg/lib
|
||||
--with-jpeg-library=/usr/pkg/lib
|
||||
|
||||
setenv LD_LIBRARY_PATH "${LD_LIBRARY_PATH}:/usr/X11R6/lib"
|
||||
|
||||
gmake ADDITIONAL_INCLUDE_DIRS="-I/usr/pkg/include -I../Headers"
|
||||
LDFLAGS="-L/usr/pkg/lib -L/usr/X11R6/lib
|
||||
-ltiff -lXmu -lXt"
|
||||
|
||||
su
|
||||
gmake install
|
||||
|
||||
9.1) extensions: ./configure --prefix=/usr/GNUstep
|
||||
gmake
|
||||
su
|
||||
gmake install
|
||||
|
||||
10.) Prefs:
|
||||
/usr/GNUstep/System/Tools/defaults write NSGlobalDomain "Local
|
||||
Time Zone" "Europe/Berlin"
|
||||
|
||||
|
||||
10.1) /etc/rc.local:
|
||||
|
||||
GNUSTEP_SYSTEM_ROOT=/usr/GNUstep
|
||||
if [ -f /usr/GNUstep/System/Tools/ix86/netbsdelf1.5/gdomap ]; then
|
||||
/usr/GNUstep/System/Tools/ix86/netbsdelf1.5/gdomap
|
||||
fi
|
||||
|
||||
10.2) .cshrc:
|
||||
|
||||
Add this at the end of .cshrc:
|
||||
|
||||
setenv LD_LIBRARY_PATH /usr/X11R6/lib:/usr/local/lib/usr/pkg/lib
|
||||
source /usr/GNUstep/System/Library/Makefiles/GNUstep.csh
|
||||
if ( `gdomap -L GDNCServer | grep -c Found` == '0' ) then
|
||||
echo "Starting GNUstep services..."
|
||||
gdnc
|
||||
gpbs
|
||||
endif
|
||||
|
||||
|
||||
11.) GWorkspace: gmake LDFLAGS="-L/usr/pkg/lib -ltiff -lXmu -lXt"
|
||||
|
||||
start: openapp GWorkspace.app
|
||||
|
||||
|
||||
12.) ProjectCenter: su
|
||||
gmake install LDFLAGS="-L/usr/pkg/lib -ltiff -lXmu -lXt"
|
||||
|
||||
start: openapp ProjectCenter.app
|
||||
|
||||
|
||||
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
@ifclear HOWTO
|
||||
@c Machine Specific, Compilers, , (DIR)
|
||||
@node Machine Specific, Compilers, , (DIR)
|
||||
@node Machine Specific
|
||||
@chapter Machines
|
||||
@end ifclear
|
||||
|
||||
|
@ -36,7 +36,8 @@ GNUstep @email{bug-gnustep@@gnu.org}.
|
|||
* Irix 6.5/MIPS::
|
||||
* MacOSX/PowerPC::
|
||||
* MkLinux/PowerPC::
|
||||
* NetBSD::
|
||||
* NetBSD/i386::
|
||||
* NetBSD/Sparc64::
|
||||
* Netwinder::
|
||||
* OpenBSD 3.x::
|
||||
* OSF/Alpha::
|
||||
|
@ -182,7 +183,7 @@ See also the MacOSX/PowerPC section
|
|||
|
||||
@table @var
|
||||
@item Recommended compiler
|
||||
Unknown
|
||||
Standard
|
||||
|
||||
@item Extra libs needed
|
||||
Unknown
|
||||
|
@ -198,7 +199,7 @@ None
|
|||
Tested on sid.
|
||||
@table @var
|
||||
@item Recommended compiler
|
||||
Unknown
|
||||
Standard
|
||||
|
||||
@item Extra libs needed
|
||||
Unknown
|
||||
|
@ -214,7 +215,7 @@ None
|
|||
Tested on sid.
|
||||
@table @var
|
||||
@item Recommended compiler
|
||||
Unknown
|
||||
Standard
|
||||
|
||||
@item Extra libs needed
|
||||
Unknown
|
||||
|
@ -230,10 +231,9 @@ None
|
|||
Tested on sid.
|
||||
@table @var
|
||||
@item Recommended compiler
|
||||
Unknown
|
||||
Standard
|
||||
|
||||
@item Extra libs needed
|
||||
Unknown
|
||||
|
||||
@item Special Instructions
|
||||
None
|
||||
|
@ -279,7 +279,7 @@ For libxml2 2.4.24, make WITHOUT_PYTHON=YES
|
|||
|
||||
@c -----------------------------------------
|
||||
@node FreeBSD 3.x, FreeBSD 2.x, FreeBSD 4.x, Machine Specific
|
||||
@section FreeBSD 3.x
|
||||
@section FreeBSD 3.x (@emph{Obsolete})
|
||||
|
||||
Compiles "out of the box" on FreeBSD 3.4.
|
||||
|
||||
|
@ -427,7 +427,7 @@ or configure base with --disable-xml.
|
|||
See also the Darwin/PowerPC section.
|
||||
|
||||
@c -----------------------------------------
|
||||
@node MkLinux/PowerPC, NetBSD, MacOSX/PowerPC, Machine Specific
|
||||
@node MkLinux/PowerPC, NetBSD/i386, MacOSX/PowerPC, Machine Specific
|
||||
@section MkLinux/PowerPC
|
||||
|
||||
Tested with R2 RC2 (2004/03/04).
|
||||
|
@ -445,23 +445,49 @@ Unknown.
|
|||
@end table
|
||||
|
||||
@c -----------------------------------------
|
||||
@node NetBSD, Netwinder, MkLinux/PowerPC, Machine Specific
|
||||
@section NetBSD
|
||||
@node NetBSD/i386, NetBSD/Sparc64, MkLinux/PowerPC, Machine Specific
|
||||
@section NetBSD/i386
|
||||
|
||||
Tested on NetBSD 2.0.2 (2005/04/15)
|
||||
|
||||
@table @var
|
||||
@item Recommended compiler
|
||||
Unknown
|
||||
Standard
|
||||
|
||||
@item Extra libs needed
|
||||
libiconv
|
||||
libiconv(?), libffi
|
||||
|
||||
@item Special Instructions
|
||||
See the @url{README.NetBSD} file located in the gnustep-make package.
|
||||
Use NetBSD packages to install needed libraries. libffi either comes
|
||||
automatically with gcc or can be installed separately and works fine
|
||||
(over ffcall).
|
||||
|
||||
@end table
|
||||
|
||||
@c -----------------------------------------
|
||||
@node Netwinder, OpenBSD 3.x, NetBSD, Machine Specific
|
||||
@node NetBSD/Sparc64, Netwinder, NetBSD/i386, Machine Specific
|
||||
@section NetBSD/Sparc64 (@emph{Unstable})
|
||||
|
||||
Tested on NetBSD 2.0.2 (2005/04/15)
|
||||
|
||||
@table @var
|
||||
@item Recommended compiler
|
||||
Standard
|
||||
|
||||
@item Extra libs needed
|
||||
libiconv(?), libffi
|
||||
|
||||
@item Special Instructions
|
||||
Use NetBSD packages to install needed libraries. libffi either comes
|
||||
automatically with gcc or can be installed separately and is prefered
|
||||
over ffcall which does not work on Sparc64 machines.
|
||||
|
||||
@end table
|
||||
|
||||
gdomap crashes. Perhaps other things do not work as well.
|
||||
|
||||
@c -----------------------------------------
|
||||
@node Netwinder, OpenBSD 3.x, NetBSD/Sparc64, Machine Specific
|
||||
@section Netwinder (@emph{Unstable})
|
||||
|
||||
@table @var
|
||||
|
|
|
@ -385,7 +385,7 @@ $(DUMMY_FRAMEWORK_OBJ_FILE): $(DUMMY_FRAMEWORK_FILE)
|
|||
$(ECHO_COMPILING)$(CC) $< -c $(ALL_CPPFLAGS) $(ALL_OBJCFLAGS) -o $@$(END_ECHO)
|
||||
endif
|
||||
|
||||
ifeq ($(FOUNDATION_LIB), apple)
|
||||
ifeq ($(findstring darwin, $(GNUSTEP_TARGET_OS)), darwin)
|
||||
# When building native frameworks on Apple, we need to create a
|
||||
# top-level symlink xxx.framework/xxx ---> the framework shared
|
||||
# library
|
||||
|
|
|
@ -133,25 +133,25 @@ case "$host_os" in
|
|||
export DYLD_LIBRARY_PATH
|
||||
|
||||
# The code below has been temporarily removed, because...
|
||||
# With GNUstep -make on any platform, when you compile a
|
||||
# framework, it is supported by creating a link like
|
||||
# Libraries/libMyFramework.dylib ->
|
||||
# Frameworks/MyFramework.framework/Versions/Current/libMyFramework.dylib, to
|
||||
# mitigate the fact that FSF GCC supports to link frameworks with the -frameworks
|
||||
# flag only on Darwin .
|
||||
# Well concerning library GNUstep -make on Darwin, the problem lies in the fact
|
||||
# the Darwin linker seems to be unable to link the library when you pass the
|
||||
# flag -lMyFramework to compile an application which depends on it, strangely it
|
||||
# links the framework directly. You can see that with otool -L
|
||||
# Whatever/MyApplication.app/MyApplication which will output
|
||||
# MyFramework.framework/MyFramework and not libMyFramework.dylib .
|
||||
# So because a framework is linked when it is present even when you want to
|
||||
# link the equivalent library, the application will not find the framework when
|
||||
# you launch it with DYLD_FRAMEWORK_PATH empty. To correct that, we must
|
||||
# set DYLD_FRAMEWORK_PATH in any cases until the Darwin linker behaves correctly.
|
||||
# Frameworks in GNUstep-make are supported by creating a link like
|
||||
#
|
||||
# Libraries/libMyFramework.dylib ->
|
||||
# Frameworks/MyFramework.framework/Versions/Current/libMyFramework.dylib,
|
||||
#
|
||||
# to mitigate the fact that FSF GCC does not support a -framework flag.
|
||||
#
|
||||
# On Darwin, however, we partially emulate -framework by setting the
|
||||
# "install_name" to the framework name during linking. The dynamic
|
||||
# linker (dyld) is smart enough to find the framework under this name,
|
||||
# but only if DYLD_FRAMEWORK_PATH is set (unless we set the
|
||||
# "install_name" to an absolute path, which we don't). We'd really like
|
||||
# to fully support -framework, though.
|
||||
#
|
||||
# Use otool -L MyApplication.app/MyApplication, for instance, to see
|
||||
# how the shared libraries/frameworks are linked.
|
||||
#
|
||||
# if [ "$LIBRARY_COMBO" = "apple-apple-apple" -o \
|
||||
# "$LIBRARY_COMBO" = "apple" ]; then
|
||||
# "$LIBRARY_COMBO" = "apple" ]; then
|
||||
|
||||
if [ -z "$DYLD_FRAMEWORK_PATH" ]; then
|
||||
DYLD_FRAMEWORK_PATH="$fw_paths"
|
||||
|
|
Loading…
Reference in a new issue