Toggle navigation
Toggle navigation
此项目
正在载入...
Sign in
胡斌
/
srs
转到一个项目
Toggle navigation
项目
群组
代码片段
帮助
Toggle navigation pinning
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Authored by
winlin
2014-10-18 13:16:17 +0800
Browse Files
Options
Browse Files
Download
Email Patches
Plain Diff
Commit
d9b12b151c6b39cdd25599760d7e4400ab9044f7
d9b12b15
1 parent
4fe5a9bd
refine the makefile.
显示空白字符变更
内嵌
并排对比
正在显示
3 个修改的文件
包含
27 行增加
和
357 行删除
trunk/research/st/Makefile
trunk/research/st/srs.c
trunk/research/st/st/st.upp
trunk/research/st/Makefile
100644 → 100755
查看文件 @
d9b12b1
...
...
@@ -32,209 +32,26 @@
# may use your version of this file under either the MPL or the
# GPL.
# This is the full version of the libst library - modify carefully
VERSION
=
1.9
##########################
# Supported OSes:
#
#OS = AIX
#OS = CYGWIN
#OS = DARWIN
#OS = FREEBSD
#OS = HPUX
#OS = HPUX_64
#OS = IRIX
#OS = IRIX_64
#OS = LINUX
#OS = NETBSD
#OS = OPENBSD
#OS = OSF1
#OS = SOLARIS
#OS = SOLARIS_64
# Please see the "Other possible defines" section below for
# possible compilation options.
##########################
# Target dir and cc:
CC
=
cc
AR
=
ar
LD
=
ld
RANLIB
=
ranlib
LN
=
ln
SHELL
=
/bin/sh
ECHO
=
/bin/echo
BUILD
=
DBG
TARGETDIR
=
$(OS)
_
$(
shell
uname -r
)
_
$(BUILD)
DEFINES
=
-D
$(OS)
CFLAGS
=
SFLAGS
=
ARFLAGS
=
-rv
LNFLAGS
=
-s
DSO_SUFFIX
=
so
MAJOR
=
$(
shell
echo
$(VERSION)
| sed
's/^\([^\.]*\).*/\1/'
)
DESC
=
st.pc
TARGETDIR
=
objs
##########################
# Platform section.
# Possible targets:
TARGETS
=
aix-debug aix-optimized
\
cygwin-debug cygwin-optimized
\
darwin-debug darwin-optimized
\
freebsd-debug freebsd-optimized
\
hpux-debug hpux-optimized
\
hpux-64-debug hpux-64-optimized
\
irix-n32-debug irix-n32-optimized
\
irix-64-debug irix-64-optimized
\
linux-debug linux-optimized
\
netbsd-debug netbsd-optimized
\
openbsd-debug openbsd-optimized
\
osf1-debug osf1-optimized
\
solaris-debug solaris-optimized
\
solaris-64-debug solaris-64-optimized
#
# Platform specifics
#
ifeq
($(OS),
AIX)
AIX_VERSION
=
$(
shell
uname -v
)
.
$(
shell
uname -r
)
TARGETDIR
=
$(OS)
_
$(AIX_VERSION)
_
$(BUILD)
CC
=
xlC
STATIC_ONLY
=
yes
ifeq
($(BUILD),
OPT)
OTHER_FLAGS
=
-w
endif
ifneq
($(filter-out
4.1
4.2,
$(AIX_VERSION)),)
DEFINES
+=
-DMD_HAVE_SOCKLEN_T
endif
endif
ifeq
($(OS),
CYGWIN)
TARGETDIR
=
$(OS)
_
$(BUILD)
CC
=
gcc
LD
=
gcc
DSO_SUFFIX
=
dll
SLIBRARY
=
$(TARGETDIR)
/libst.dll.a
DLIBRARY
=
$(TARGETDIR)
/libst.dll
DEF_FILE
=
$(TARGETDIR)
/libst.def
LDFLAGS
=
libst.def -shared --enable-auto-image-base -Wl,--output-def,
$(DEF_FILE)
,--out-implib,
$(SLIBRARY)
OTHER_FLAGS
=
-Wall
endif
ifeq
($(OS),
DARWIN)
LD
=
cc
SFLAGS
=
-fPIC -fno-common
DSO_SUFFIX
=
dylib
RELEASE
=
$(
shell
uname -r | cut -d. -f1
)
PPC
=
$(
shell
test
$(RELEASE)
-le 9
&&
echo
yes
)
INTEL
=
$(
shell
test
$(RELEASE)
-ge 9
&&
echo
yes
)
ifeq
($(PPC),
yes)
CFLAGS
+=
-arch ppc
LDFLAGS
+=
-arch ppc
endif
ifeq
($(INTEL),
yes)
CFLAGS
+=
-arch i386 -arch x86_64
LDFLAGS
+=
-arch i386 -arch x86_64
endif
LDFLAGS
+=
-dynamiclib -install_name /sw/lib/libst.
$(MAJOR)
.
$(DSO_SUFFIX)
-compatibility_version
$(MAJOR)
-current_version
$(VERSION)
OTHER_FLAGS
=
-Wall
endif
ifeq
($(OS),
FREEBSD)
SFLAGS
=
-fPIC
LDFLAGS
=
-shared -soname
=
$(SONAME)
-lc
OTHER_FLAGS
=
-Wall
ifeq
($(shell
test
-f
/usr/include/sys/event.h
&&
echo
yes),
yes)
DEFINES
+=
-DMD_HAVE_KQUEUE
endif
endif
ifeq
(HPUX,
$(findstring
HPUX,
$(OS)))
ifeq
($(OS),
HPUX_64)
DEFINES
=
-DHPUX
CFLAGS
=
-Ae +DD64 +Z
else
CFLAGS
=
-Ae +DAportable +Z
endif
RANLIB
=
true
LDFLAGS
=
-b
DSO_SUFFIX
=
sl
endif
# Supported OSes:
OS
=
LINUX
ifeq
(IRIX,
$(findstring
IRIX,
$(OS)))
ifeq
($(OS),
IRIX_64)
DEFINES
=
-DIRIX
ABIFLAG
=
-64
else
ABIFLAG
=
-n32
endif
RANLIB
=
true
CFLAGS
=
$(ABIFLAG)
-mips3
LDFLAGS
=
$(ABIFLAG)
-shared
OTHER_FLAGS
=
-fullwarn
ifneq
($(shell
test
-f
/usr/include/sys/epoll.h
&&
echo
yes),
yes)
default
:
@
echo
"epoll not found"
@
exit
1
endif
ifeq
($(OS),
LINUX)
EXTRA_OBJS
=
$(TARGETDIR)
/md.o
SFLAGS
=
-fPIC
LDFLAGS
=
-shared -soname
=
$(SONAME)
-lc
OTHER_FLAGS
=
-Wall
ifeq
($(shell
test
-f
/usr/include/sys/epoll.h
&&
echo
yes),
yes)
DEFINES
+=
-DMD_HAVE_EPOLL
endif
endif
ifeq
($(OS),
NETBSD)
SFLAGS
=
-fPIC
LDFLAGS
=
-shared -soname
=
$(SONAME)
-lc
OTHER_FLAGS
=
-Wall
endif
ifeq
($(OS),
OPENBSD)
SFLAGS
=
-fPIC
LDFLAGS
=
-shared -soname
=
$(SONAME)
-lc
OTHER_FLAGS
=
-Wall
ifeq
($(shell
test
-f
/usr/include/sys/event.h
&&
echo
yes),
yes)
DEFINES
+=
-DMD_HAVE_KQUEUE
endif
endif
ifeq
($(OS),
OSF1)
RANLIB
=
true
LDFLAGS
=
-shared -all -expect_unresolved
"*"
endif
ifeq
(SOLARIS,
$(findstring
SOLARIS,
$(OS)))
TARGETDIR
=
$(OS)
_
$(
shell
uname -r | sed
's/^5/2/'
)
_
$(BUILD)
CC
=
gcc
LD
=
gcc
RANLIB
=
true
LDFLAGS
=
-G
OTHER_FLAGS
=
-Wall
ifeq
($(OS),
SOLARIS_64)
DEFINES
=
-DSOLARIS
CFLAGS
+=
-m64
LDFLAGS
+=
-m64
endif
endif
#
# End of platform section.
##########################
ifeq
($(BUILD),
OPT)
OTHER_FLAGS
+=
-O
else
OTHER_FLAGS
+=
-g
DEFINES
+=
-DDEBUG
endif
CFLAGS
=
OTHER_FLAGS
+=
-Wall -g -O0
DEFINES
=
-D
$(OS)
-DDEBUG -DMD_HAVE_EPOLL
##########################
# Other possible defines:
...
...
@@ -290,76 +107,18 @@ OBJS = $(TARGETDIR)/sched.o \
$(TARGETDIR)
/sync.o
\
$(TARGETDIR)
/key.o
\
$(TARGETDIR)
/io.o
\
$(TARGETDIR)
/event.o
$(TARGETDIR)
/event.o
\
$(TARGETDIR)
/srs.o
OBJS
+=
$(EXTRA_OBJS)
HEADER
=
$(TARGETDIR)
/st.h
SLIBRARY
=
$(TARGETDIR)
/libst.a
DLIBRARY
=
$(TARGETDIR)
/libst.
$(DSO_SUFFIX)
.
$(VERSION)
EXAMPLES
=
examples
LINKNAME
=
libst.
$(DSO_SUFFIX)
SONAME
=
libst.
$(DSO_SUFFIX)
.
$(MAJOR)
FULLNAME
=
libst.
$(DSO_SUFFIX)
.
$(VERSION)
ifeq
($(OS),
CYGWIN)
SONAME
=
cygst.
$(DSO_SUFFIX)
SLIBRARY
=
$(TARGETDIR)
/libst.dll.a
DLIBRARY
=
$(TARGETDIR)
/
$(SONAME)
LINKNAME
=
# examples directory does not compile under cygwin
EXAMPLES
=
endif
ifeq
($(OS),
DARWIN)
LINKNAME
=
libst.
$(DSO_SUFFIX)
SONAME
=
libst.
$(MAJOR)
.
$(DSO_SUFFIX)
FULLNAME
=
libst.
$(VERSION)
.
$(DSO_SUFFIX)
endif
ifeq
($(STATIC_ONLY),
yes)
LIBRARIES
=
$(SLIBRARY)
else
LIBRARIES
=
$(SLIBRARY)
$(DLIBRARY)
endif
ifeq
($(OS),)
ST_ALL
=
unknown
else
ST_ALL
=
$(TARGETDIR)
$(LIBRARIES)
$(HEADER)
$(EXAMPLES)
$(DESC)
endif
all
:
$(ST_ALL)
SRS
=
$(TARGETDIR)
/srs
unknown
:
@
echo
@
echo
"Please specify one of the following targets:"
@
echo
@
for
target
in
$(TARGETS)
;
do
echo
$$
target;
done
@
echo
st.pc
:
st.pc.in
sed
"s/@VERSION@/
${
VERSION
}
/g"
<
$<
>
$@
all
:
$(TARGETDIR) $(SRS)
$(TARGETDIR)
:
if
[
! -d
$(TARGETDIR)
]
;
then
mkdir
$(TARGETDIR)
;
fi
$(SLIBRARY)
:
$(OBJS)
$(AR)
$(ARFLAGS)
$@
$(OBJS)
$(RANLIB)
$@
rm -f obj;
$(LN)
$(LNFLAGS)
$(TARGETDIR)
obj
$(DLIBRARY)
:
$(OBJS:%.o=%-pic.o)
$(LD)
$(LDFLAGS)
$^
-o
$@
if
test
"
$(LINKNAME)
"
;
then
\
cd
$(TARGETDIR)
;
\
rm -f
$(SONAME)
$(LINKNAME)
;
\
$(LN)
$(LNFLAGS)
$(FULLNAME)
$(SONAME)
;
\
$(LN)
$(LNFLAGS)
$(FULLNAME)
$(LINKNAME)
;
\
fi
$(HEADER)
:
public.h
rm -f
$@
cp public.h
$@
$(SRS)
:
$(OBJS)
$(CC)
$(CFLAGS)
-o
$@
$(OBJS)
$(TARGETDIR)/md.o
:
md.S
$(CC)
$(CFLAGS)
-c
$<
-o
$@
...
...
@@ -367,103 +126,5 @@ $(TARGETDIR)/md.o: md.S
$(TARGETDIR)/%.o
:
%.c common.h md.h
$(CC)
$(CFLAGS)
-c
$<
-o
$@
examples
::
@
echo
Making
$@
@
cd
$@
;
$(MAKE)
CC
=
"
$(CC)
"
CFLAGS
=
"
$(CFLAGS)
"
OS
=
"
$(OS)
"
TARGETDIR
=
"
$(TARGETDIR)
"
clean
:
rm -rf
*
_OPT
*
_DBG obj st.pc
##########################
# Pattern rules:
ifneq
($(SFLAGS),)
# Compile with shared library options if it's a C file
$(TARGETDIR)/%-pic.o
:
%.c common.h md.h
$(CC)
$(CFLAGS)
$(SFLAGS)
-c
$<
-o
$@
endif
# Compile assembly as normal or C as normal if no SFLAGS
%-pic.o
:
%.o
rm -f
$@
;
$(LN)
$(LNFLAGS)
$
(
<F
)
$@
##########################
# Target rules:
default-debug
:
. ./osguess.sh;
$(MAKE)
OS
=
"
$$
OS"
BUILD
=
"DBG"
default default-optimized
:
. ./osguess.sh;
$(MAKE)
OS
=
"
$$
OS"
BUILD
=
"OPT"
aix-debug
:
$(MAKE)
OS
=
"AIX"
BUILD
=
"DBG"
aix-optimized
:
$(MAKE)
OS
=
"AIX"
BUILD
=
"OPT"
cygwin-debug
:
$(MAKE)
OS
=
"CYGWIN"
BUILD
=
"DBG"
cygwin-optimized
:
$(MAKE)
OS
=
"CYGWIN"
BUILD
=
"OPT"
darwin-debug
:
$(MAKE)
OS
=
"DARWIN"
BUILD
=
"DBG"
darwin-optimized
:
$(MAKE)
OS
=
"DARWIN"
BUILD
=
"OPT"
freebsd-debug
:
$(MAKE)
OS
=
"FREEBSD"
BUILD
=
"DBG"
freebsd-optimized
:
$(MAKE)
OS
=
"FREEBSD"
BUILD
=
"OPT"
hpux-debug
:
$(MAKE)
OS
=
"HPUX"
BUILD
=
"DBG"
hpux-optimized
:
$(MAKE)
OS
=
"HPUX"
BUILD
=
"OPT"
hpux-64-debug
:
$(MAKE)
OS
=
"HPUX_64"
BUILD
=
"DBG"
hpux-64-optimized
:
$(MAKE)
OS
=
"HPUX_64"
BUILD
=
"OPT"
irix-n32-debug
:
$(MAKE)
OS
=
"IRIX"
BUILD
=
"DBG"
irix-n32-optimized
:
$(MAKE)
OS
=
"IRIX"
BUILD
=
"OPT"
irix-64-debug
:
$(MAKE)
OS
=
"IRIX_64"
BUILD
=
"DBG"
irix-64-optimized
:
$(MAKE)
OS
=
"IRIX_64"
BUILD
=
"OPT"
linux-debug
:
$(MAKE)
OS
=
"LINUX"
BUILD
=
"DBG"
linux-optimized
:
$(MAKE)
OS
=
"LINUX"
BUILD
=
"OPT"
# compatibility
linux-ia64-debug
:
linux-debug
linux-ia64-optimized
:
linux-optimized
netbsd-debug
:
$(MAKE)
OS
=
"NETBSD"
BUILD
=
"DBG"
netbsd-optimized
:
$(MAKE)
OS
=
"NETBSD"
BUILD
=
"OPT"
openbsd-debug
:
$(MAKE)
OS
=
"OPENBSD"
BUILD
=
"DBG"
openbsd-optimized
:
$(MAKE)
OS
=
"OPENBSD"
BUILD
=
"OPT"
osf1-debug
:
$(MAKE)
OS
=
"OSF1"
BUILD
=
"DBG"
osf1-optimized
:
$(MAKE)
OS
=
"OSF1"
BUILD
=
"OPT"
solaris-debug
:
$(MAKE)
OS
=
"SOLARIS"
BUILD
=
"DBG"
solaris-optimized
:
$(MAKE)
OS
=
"SOLARIS"
BUILD
=
"OPT"
solaris-64-debug
:
$(MAKE)
OS
=
"SOLARIS_64"
BUILD
=
"DBG"
solaris-64-optimized
:
$(MAKE)
OS
=
"SOLARIS_64"
BUILD
=
"OPT"
##########################
rm -rf
$(TARGETDIR)
...
...
trunk/research/st/srs.c
0 → 100644
查看文件 @
d9b12b1
#include "public.h"
int
main
(
int
argc
,
char
**
argv
)
{
return
0
;
}
...
...
trunk/research/st/st/st.upp
100644 → 100755
查看文件 @
d9b12b1
file
main readonly separator,
..\srs.c,
st readonly separator,
..\common.h,
..\event.c,
..\io.c,
...
...
请
注册
或
登录
后发表评论