1/* Copyright 1994 NEC Corporation, Tokyo, Japan. 2 * 3 * Permission to use, copy, modify, distribute and sell this software 4 * and its documentation for any purpose is hereby granted without 5 * fee, provided that the above copyright notice appear in all copies 6 * and that both that copyright notice and this permission notice 7 * appear in supporting documentation, and that the name of NEC 8 * Corporation not be used in advertising or publicity pertaining to 9 * distribution of the software without specific, written prior 10 * permission. NEC Corporation makes no representations about the 11 * suitability of this software for any purpose. It is provided "as 12 * is" without express or implied warranty. 13 * 14 * NEC CORPORATION DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, 15 * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN 16 * NO EVENT SHALL NEC CORPORATION BE LIABLE FOR ANY SPECIAL, INDIRECT OR 17 * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF 18 * USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 19 * OTHER TORTUOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 20 * PERFORMANCE OF THIS SOFTWARE. 21 */ 22 23/* 24 * ���Υե�����Ǥϡ��ƥե�����ȡ��뤹��ǥ��쥯�ȥ�ʤɤ� 25 * ���ꤹ�뤿��Υޥ�������ꤷ�ޤ��� 26 * 27 * ������ѥ����Ԥ�����ɬ�� Canna.conf �������ԤäƤ��������� 28 * 29 * �ʲ��˼����ޥ�������ꤷ�Ʋ������� 30 * 31 * cannaBinDir; 32 * ���ޥ�ɤȡ��뤹��ǥ��쥯�ȥ�Ǥ��� 33 * ���Υǥ��쥯�ȥ�˥��ޥ�ɥ������ѥ���ĥ��褦�� 34 * ���Ƥ��������� 35 * cannaSrvDir; 36 * cannaserver ����� cannakill �ȡ��뤹��ǥ��쥯�ȥ� 37 * �Ǥ��� 38 * libCannaDir; 39 * libcanna ���饤�֥�����ȡ��뤹��ǥ��쥯�ȥ�Ǥ��� 40 * cannaLibDir; 41 * �ؤ���ʡ٤μ�Υե�����ȡ��뤹��ǥ��쥯�ȥ�Ǥ��� 42 * cannaManDir; 43 * �ؤ���ʡٴ�Ϣ����饤��ޥ˥奢��Υ��ȡ���ǥ��쥯�ȥ� 44 * �Ǥ��� 45 * cannaIncDir; 46 * �إå��ե�����ȡ��뤹��ǥ��쥯�ȥ�Ǥ��� 47 * ErrDir; 48 * ���ե����뤬�֤����ǥ��쥯�ȥ�Ǥ��� 49 * ���ե�����ϡ����ʴ����Ѵ������Ф����顼��å������� 50 * ���Ϥ���ե�����Ǥ��� 51 * 52 * cannaOwner: 53 * ����Ȥ��ʴ����Ѵ������ФΥ����ʤ���ꤷ�ޤ��� 54 * 55 * cannaGroup: 56 * ����Ȥ��ʴ����Ѵ������ФΥ��롼�פ���ꤷ�ޤ��� 57 * 58 * sharedLibExtension: 59 * shared library �γ�ĥ�Ҥ���ꤷ�ޤ����̾�� so.1 �ʤ� 60 * ���Ȥ��ޤ��� HP-UX �Ǥ� sl �Ǥ��� 61 * 62 * cannaDsoRev: 63 * shared library �Υ�ӥ�������ꤷ�ޤ���so.1 �ʤ� 1 64 * �Ǥ���so.1.1 �Τ褦�ʾ��ϡ� 1.1 �Ȼ��ꤷ�ޤ��� 65 * 66 * pubdicDir: 67 * Pubdic+ �ǤϺǿ��μ���������Ƥ��ޤ�������������� 68 * ������ˤϤ����Ǥ��Υǥ��쥯�ȥ����ꤷ�ޤ���Canna 69 * �� make �����ˡ����ꤵ�줿�ǥ��쥯�ȥ�� iroha.t 70 * ������Ƥ�����֤ˤʤäƤ���褦�ˤ��Ƥ��������� 71 * 72 * engineSwitch: 73 * (���ߤ����ѤǤ��ޤ���) 74 * 75 * cannaLight: 76 * (���̤���ͳ��̵���¤�1�Τޤޤˤ��Ƥ���������) 77 * 78 * USE_OBSOLETE_STYLE_FILENAME: 79 * ��������̾�������ơ��֥�̾�� Version 3.4 ������̾ 80 * ���Τޤޤˤ�����ˤϡ����Υޥ���� #define ���Ƥ��� 81 * ���������ʤߤˡ�Version 3.5 ���顢������̾�Ѵ��ơ� 82 * �֥�γ�ĥ�Ҥ� .kp ���� .cbp �ء��ƥ����ȼ���ե����롢 83 * �Х��ʥ꼭��ե����롢����ؽ��ե�����γ�ĥ�Ҥ����줾 84 * �졢.t, .d, .fq ���� .cbd, .ctd, .cld ���ѹ��ˤʤ�ޤ� 85 * ���� 86 * 87 * �ʲ��Σ��ĤϽ������פȤϻפ��ޤ��������Ƥ����ޤ��� 88 * 89 * DicDir; 90 * ����ȡ��뤹��ǥ��쥯�ȥ�Ǥ��� 91 * 92 * JAPANESEMAN; 93 * �ޥ˥奢��Ȥ������ܸ�ޥ˥奢��ȡ��뤹����� 94 * �Ϥ��Υޥ���� #define ���ޤ����Ѹ�ޥ˥奢��Ͻ�ʬ�� 95 * ����äƤ��ʤ��Τ� #define ���Ƥ����Ƥ��������� 96 */ 97/* 98 * $Id: Canna.conf.dist,v 1.23.2.4 2004/04/26 23:15:17 aida_s Exp $ 99 */ 100 101/* root�ˤʤ餺�˥��ȡ��뤹����Ϥ����������Ʋ����� */ 102/* #define InstallAsUser */ 103/* ����ȸߴ��Υǥ��쥯�ȥ깽¤�ˤ�����Ϥ����������Ƥ������� */ 104/* #define ObsoleteInstallDir */ 105 106/* �ʲ��ǥե�����͡��ѹ����� */ 107#ifdef InstallAsUser 108# define DefCannaPrefix $(HOME)/canna 109# define DefErrDir $(cannaPrefix)/log 110# define DefLibCannaDir $(cannaExecPrefix)/lib 111#else 112# define DefCannaPrefix /usr/local/canna 113# ifdef ObsoleteInstallDir 114# define DefErrDir /usr/spool/canna 115# define DefLibCannaDir /usr/lib 116# else 117# define DefErrDir /var/log 118# define DefLibCannaDir $(cannaExecPrefix)/lib 119# endif 120#endif 121#ifdef ObsoleteInstallDir 122# define DefCannaSrvDir $(cannaExecPrefix)/bin 123# define DefCannaLibDir $(cannaPrefix)/lib 124#else 125# define DefCannaSrvDir $(cannaExecPrefix)/sbin 126# define DefCannaLibDir $(cannaPrefix)/share/canna 127#endif 128 129#if defined(LinuxArchitecture) || defined(FreeBSDArchitecture) \ 130 || defined(NetBSDArchitecture) || defined(OpenBSDArchitecture) 131# ifdef UseElfFormat 132# define ModernElfLinkAvailable UseElfFormat 133# define CannaGccElfArchitecture 134# else 135# define ModernElfLinkAvailable NO 136# endif 137#elif defined(SVR4Architecture) 138# define ModernElfLinkAvailable YES 139#else 140# define ModernElfLinkAvailable NO 141#endif 142 143cannaPrefix = DefCannaPrefix 144cannaExecPrefix = $(cannaPrefix) 145cannaBinDir = $(cannaExecPrefix)/bin 146cannaSrvDir = DefCannaSrvDir 147XCOMM cannaLibDir = /var/lib/canna 148XCOMM cannaLibDir = /var/db/canna 149cannaLibDir = DefCannaLibDir 150XCOMM cannaManDir = $(cannaPrefix)/share/man 151cannaManDir = $(cannaPrefix)/man 152cannaIncDir = $(cannaPrefix)/include/canna 153 154libCannaDir = DefLibCannaDir 155ErrDir = DefErrDir 156 157/* ��С������Ȥθߴ�API��̵���ˤ������0��������Ƥ������� */ 158#define SupportOldWchar 1 159 160/* IPv6���Ѥ������1��������Ƥ������� */ 161#define UseInet6 0 /* requires newer IPv6 implementation */ 162 163/* 3.2�Ϥ���3.6�ϤޤǤη����μ��������Ϥ����������Ƥ������� */ 164/* #define DIC_3_6_COMPAT */ 165 166/* ELF��Ȥ��ץ�åȥե�����ǡ���ͭ�饤�֥��ΰ�����Linux��NetBSD�� 167 * OpenBSD�Τ褦�ʸ���Ū�ʰ����ˤ�������硢YES�ˤ��Ƥ��������� 168 */ 169#define ModernElfLink NO /* experimental */ 170 171 172cannaOwner = bin 173cannaGroup = bin 174 175#ifdef InstallAsUser 176cannaOwnerGroup = 177#else 178cannaOwnerGroup = -o $(cannaOwner) -g $(cannaGroup) 179#endif 180 181cannaDsoRev = 1.2 182 183#if defined(cygwinArchitecture) 184/* import library��������ꤷ�Ƥ�����DLL���Τ�/usr/X11R6/bin�����롣 */ 185sharedLibExtension = a 186#elif defined(HPArchitecture) && !defined(LinuxArchitecture) 187sharedLibExtension = sl.$(cannaDsoRev) 188#elif defined(DarwinArchitecture) 189sharedLibExtension = $(cannaDsoRev).dylib 190#else 191sharedLibExtension = so.$(cannaDsoRev) 192#endif 193 194/* iroha.t �ξ�����ꡣpubdic+ ������Ф��������ꤷ�ޤ��� */ 195pubdicDir = $(CANNAROOT)/dic/ideo/pubdic 196 197#ifdef InstallAsUser 198CHOWN = : 199CHGRP = : 200CHMOD = : 201#else 202CHOWN = chown 203CHGRP = chgrp 204CHMOD = chmod 205#endif 206 207/* ���ܸ�ޥ˥奢���Ȥ�ʤ��ΤǤ���Х����ȥ����� */ 208#define JAPANESEMAN 209 210/* #define engineSwitch */ 211 212/* �ʲ������å������ */ 213#ifdef engineSwitch 214 kinput2SrcDir = /work/X11R5/contrib/im/kinput2 215 wnn4SrcDir = /work/X11R5/contrib/im/Xsi/Wnn 216 sj3SrcDir = /work/X11R5/contrib/im/Ximp/sony/sj3 217 218 DLLIB = -ldl 219 cannaDsoRevDef = -DCANNA_DSOREV=\"$(cannaDsoRev)\" 220#endif 221 222/* cannaserver��libcanna �� EUC �ץ�ȥ�����������Ȥ߹��ߤޤ��� 223 * EUC�ץ�ȥ���Υ��ݡ��Ȥ��Ǥ��ڤ�줿�Τǡ����̤���ͳ��̵���¤�1�� 224 * ���ꤷ�Ʋ������� 225 */ 226cannaLight = 1 227 228/* ��������̾�������ơ��֥�̾�������̾���Τޤޤˤ�����ˤϡ� 229 USE_OBSOLETE_STYLE_FILENAME ��������� */ 230/* #define USE_OBSOLETE_STYLE_FILENAME */ 231 232 233/* 234 * ���ȡ���Ѥߤζ�ͭ�饤�֥����Ѥ��� Canna �� 235 * ���ޥ�����������ϡ����� YES �ˤ��Ƥ������� 236 */ 237/* #define UseInstalledLibCanna YES */ 238#define UseInstalledLibCanna NO 239 240DicDir = $(cannaLibDir)/dic 241 242/* �������鲼���ѹ����פǤ� */ 243 244/* 245 * �����ˤĤ��Ƥ� <Library.tmpl> �⸫�Ƥ������� 246 */ 247 248#ifndef DoSharedLib 249#define DoSharedLib HasSharedLibraries 250#endif 251 252#if DoSharedLib == YES && defined(cygwinArchitecture) 253#define CYGWIN_DLL 254#endif 255#ifndef CYGWIN_DLL 256/* cygwin�Ǥϡ�imake��import library��*.dll.a�Ǥʤ�*.a�ˤ��Ƥ��ޤ����ᡢ 257 static library�ȶ�¸�Ǥ��ʤ� */ 258#define DoNormalLib YES 259#endif 260 261#define DoDebugLib NO 262#define DoProfileLib NO 263 264#ifndef UseInstalledLibCanna 265#define UseInstalledLibCanna NO 266#endif /* UseInstalledLibCanna */ 267 268#if 0 && defined(OS2Architecutre) 269# ifdef LibraryTargetName 270# undef LibraryTargetName 271# endif 272# define LibraryTargetName(libname) libname.a 273#endif 274#if DoSharedLib 275# define CannaDepLibraryName(libname) Concat(lib,libname.$(sharedLibExtension)) 276#else 277# define CannaDepLibraryName(libname) LibraryTargetName(libname) 278#endif 279 280#if UseInstalledLibCanna 281DEPCANNALIB = $(libCannaDir)/CannaDepLibraryName(canna) 282CANNALIB = -L$(libCannaDir) -lcanna $(DLLIB) 283DEPCANNALIB16 = $(libCannaDir)/CannaDepLibraryName(canna16) 284CANNALIB16 = -L$(libCannaDir) -lcanna16 $(DLLIB) 285#else 286DEPCANNALIB = $(CANNASRC)/CannaDepLibraryName(canna) 287CANNALIB = -L$(CANNASRC) -lcanna $(DLLIB) 288DEPCANNALIB16 = $(CANNASRC)/CannaDepLibraryName(canna16) 289CANNALIB16 = -L$(CANNASRC) -lcanna16 $(DLLIB) 290#endif 291 292#if DoSharedLib 293DEPRKCLIB = $(DEPCANNALIB) 294RKCLIB = $(CANNALIB) 295#else /* !HasSharedLibraries */ 296DEPRKCLIB = $(RKCSRC)/LibraryTargetName(RKC) 297RKCLIB = -L$(RKCSRC) -lRKC 298#endif /* !HasSharedLibraries */ 299 300DEPRKLIB = $(CANNAROOT)/lib/RK/LibraryTargetName(RK) 301RKLIB = -L$(CANNAROOT)/lib/RK -lRK 302DEPRKINDEPLIB = $(CANNAROOT)/lib/RKindep/LibraryTargetName(RKindep) 303RKINDEPLIB = -L$(CANNAROOT)/lib/RKindep -lRKindep 304LDOPTIONS = $(CDEBUGFLAGS) $(CCOPTIONS) $(LOCAL_LDFLAGS) 305#if ModernElfLink 306/* best effort */ 307# if defined(CannaGccElfArchitecture) 308SHLIBLDFLAGS = -shared -Wl,-rpath,$(libCannaDir) 309# elif defined(SVR4Architecture) 310SHLIBLDFLAGS = -G -z text 311# endif 312USRLIBDIRPATH = $(libCannaDir) 313CCENVSETUP = LD_RUN_PATH=$(USRLIBDIRPATH) 314SOSYMLINK = true 315#endif 316 317/* 318 * �������鲼���ѹ����ʤ��褦�ˤ��Ƥ��������� 319 */ 320#if defined(SunArchitecture) 321# define CannaDefines -D__EXTENSIONS__ 322#else 323# define CannaDefines 324#endif 325CANNA_DEFINES = CannaDefines 326CANNASERVER_DEFINES = $(CANNA_DEFINES) 327RK_DEFINES = $(CANNA_DEFINES) 328RKC_DEFINES = -DCPP='"$(CPP)"' $(CANNA_DEFINES) 329UILIB_DEFINES = $(cannaDsoRevDef) $(CANNA_DEFINES) 330SCRIPTS_DEFINES = $(CANNA_DEFINES) 331 332#ifdef JAPANESEMAN 333JMNLOCALE = ja 334#endif 335 336/* USE_OBSOLETE_STYLE_FILENAME ��������뤿������ */ 337#ifdef USE_OBSOLETE_STYLE_FILENAME 338useObsoleteFilename = -DUSE_OBSOLETE_STYLE_FILENAME 339#endif 340 341#ifdef InstallAsUser 342UnixSockDir = $(cannaPrefix)/tmp/.iroha_unix 343AccessFile = $(cannaPrefix)/etc/hosts.canna 344#else 345UnixSockDir = /tmp/.iroha_unix 346AccessFile = /etc/hosts.canna 347#endif 348UnixSockName = IROHA 349 350/* 351 * �ʲ�man�ڡ����˴ؤ������ 352 */ 353 354#ifndef OS2Architecutre 355MANUALSED = $(CANNAROOT)/misc/manual.sed 356 357#define ConvertPathName(dst,src) @@\ 358dst:: src $(MANUALSED) @@\ 359 sed -f $(MANUALSED) src > dst @@\ 360$(MANUALSED):: $(CANNAROOT)/Canna.conf @@\ 361 (echo "s%@(cannaBinDir)%$(cannaBinDir)%g"; \ @@\ 362 echo "s%@(cannaLibDir)%$(cannaLibDir)%g"; \ @@\ 363 echo "s%@(cannaIncDir)%$(cannaIncDir)%g"; \ @@\ 364 echo "s%@(UnixSockDir)%$(UnixSockDir)%g"; \ @@\ 365 echo "s%@(UnixSockName)%$(UnixSockName)%g"; \ @@\ 366 echo "s%@(AccessFile)%$(AccessFile)%g"; \ @@\ 367 echo "s%@(DicDir)%$(DicDir)%g"; \ @@\ 368 echo "s%@(ErrDir)%$(ErrDir)%g") > $(MANUALSED) @@\ 369clean:: @@\ 370 $(RM) $(MANUALSED) 371#else 372MANUALSED = manual.sed 373 374#define ConvertPathName(dst,src) @@\ 375dst:: src $(MANUALSED) @@\ 376 sed -f $(MANUALSED) src > dst @@\ 377$(MANUALSED):: $(CANNAROOT)/Canna.conf @@\ 378 echo "s%@(cannaBinDir)%$(cannaBinDir)%g" > $(MANUALSED) @@\ 379 echo "s%@(cannaLibDir)%$(cannaLibDir)%g" >> $(MANUALSED) @@\ 380 echo "s%@(cannaIncDir)%$(cannaIncDir)%g" >> $(MANUALSED) @@\ 381 echo "s%@(UnixSockDir)%$(UnixSockDir)%g" >> $(MANUALSED) @@\ 382 echo "s%@(UnixSockName)%$(UnixSockName)%g" >> $(MANUALSED) @@\ 383 echo "s%@(AccessFile)%$(AccessFile)%g" >> $(MANUALSED) @@\ 384 echo "s%@(DicDir)%$(DicDir)%g" >> $(MANUALSED) @@\ 385 echo "s%@(ErrDir)%$(ErrDir)%g" >> $(MANUALSED) @@\ 386clean:: @@\ 387 $(RM) $(MANUALSED) 388#endif 389 390#ifdef InstallManPageLong 391#undef InstallManPageLong 392#endif 393 394#ifdef ObsoleteInstallDir 395#define ManInstDir man$(MANSUFFIX) 396#define ManBase(dest) dest.$(MANSUFFIX) 397#define LibManInstDir man$(LIBMANSUFFIX) 398#define LibManBase(dest) dest.$(LIBMANSUFFIX) 399#else /* !ObsoleteInstallDir */ 400#define ManInstDir man1 401#define ManBase(dest) dest.1 402#define LibManInstDir man3 403#define LibManBase(dest) dest.3 404#endif /* !ObsoleteInstallDir */ 405#define ManDest(dest) ManInstDir/ManBase(dest) 406#define LibManDest(dest) LibManInstDir/LibManBase(dest) 407#define ManTop(destdir) $(DESTDIR)destdir 408#define JManTop(destdir) $(DESTDIR)destdir/$(JMNLOCALE) 409 410#ifdef JAPANESEMAN 411#define InstallManPageLong(file,destdir,dest) @@\ 412ConvertPathName(file.tmp,file.man) @@\ 413ConvertPathName(file.jtmp,file.jmn) @@\ 414install.man:: file.tmp file.jtmp @@\ 415 MakeDir($(DESTDIR)destdir/ManInstDir) @@\ 416 MakeDir($(DESTDIR)destdir/$(JMNLOCALE)/ManInstDir) @@\ 417 $(INSTALL) -c $(INSTMANFLAGS) file.tmp ManTop(destdir)/ManDest(dest) @@\ 418 $(INSTALL) -c $(INSTMANFLAGS) file.jtmp JManTop(destdir)/ManDest(dest) @@\ 419 $(RM) file.tmp file.jtmp @@\ 420clean:: @@\ 421 $(RM) file.tmp file.jtmp 422#else 423#define InstallManPageLong(file,destdir,dest) @@\ 424ConvertPathName(file.tmp,file.man) @@\ 425install.man:: file.tmp @@\ 426 MakeDir($(DESTDIR)destdir/ManInstDir) @@\ 427 $(INSTALL) -c $(INSTMANFLAGS) file.tmp ManTop(destdir)/ManDest(dest) @@\ 428 $(RM) file.tmp @@\ 429clean:: @@\ 430 $(RM) file.tmp 431#endif 432 433#ifdef InstallManPage 434#undef InstallManPage 435#endif 436#define InstallManPage(file,destdir) @@\ 437InstallManPageLong(file,destdir,file) 438 439#ifdef InstallLibManPageLong 440#undef InstallLibManPageLong 441#endif 442#ifdef JAPANESEMAN 443#define InstallLibManPageLong(file,destdir,dest) @@\ 444ConvertPathName(file.tmp,file.man) @@\ 445ConvertPathName(file.jtmp,file.jmn) @@\ 446install.man:: file.tmp file.jtmp @@\ 447 MakeDir($(DESTDIR)destdir/LibManInstDir) @@\ 448 MakeDir($(DESTDIR)destdir/$(JMNLOCALE)/LibManInstDir) @@\ 449 $(INSTALL) -c $(INSTMANFLAGS) file.tmp ManTop(destdir)/LibManDest(dest) @@\ 450 $(INSTALL) -c $(INSTMANFLAGS) file.jtmp JManTop(destdir)/LibManDest(dest) @@\ 451 $(RM) file.tmp file.jtmp @@\ 452clean:: @@\ 453 $(RM) file.tmp file.jtmp 454#else 455#define InstallLibManPageLong(file,destdir,dest) @@\ 456ConvertPathName(file.tmp,file.man) @@\ 457install.man:: file.tmp @@\ 458 MakeDir($(DESTDIR)destdir/LibManInstDir) @@\ 459 $(INSTALL) -c $(INSTMANFLAGS) file.tmp ManTop(destdir)/LibManDest(dest) @@\ 460 $(RM) file.tmp @@\ 461clean:: @@\ 462 $(RM) file.tmp 463#endif 464 465#ifdef InstallLibManPage 466#undef InstallLibManPage 467#endif 468#define InstallLibManPage(file,destdir) @@\ 469InstallLibManPageLong(file,destdir,file) 470 471#ifdef InstallLibManPageAliases 472#undef InstallLibManPageAliases 473#endif 474#ifdef JAPANESEMAN 475#define InstallLibManPageAliases(file,destdir,aliases) @@\ 476install.man:: @@\ 477 @for i in aliases; do (set -x; \ @@\ 478 $(RM) $(DESTDIR)destdir/LibManDest($$i); \ @@\ 479 $(LN) LibManBase(file) ManTop(destdir)/LibManDest($$i); \ @@\ 480 $(RM) $(DESTDIR)destdir/$(JMNLOCALE)/LibManDest($$i); \ @@\ 481 $(LN) LibManBase(file) JManTop(destdir)/LibManDest($$i) \ @@\ 482 ); done 483#else 484#define InstallLibManPageAliases(file,destdir,aliases) @@\ 485install.man:: @@\ 486 @for i in aliases; do (set -x; \ @@\ 487 $(RM) $(DESTDIR)destdir/LibManDest($$i); \ @@\ 488 $(LN) LibManBase(file) JManTop(destdir)/LibManDest($$i) \ @@\ 489 ); done 490#endif 491 492/* 493 * �ʲ��饤�֥��˴ؤ������ 494 */ 495 496#if ModernElfLink 497# define CannaLongShLib(libname,rev) Concat(lib,libname.so.rev) 498# define CannaShortShLib(libname) Concat(lib,libname.so) 499 500# if defined(CannaGccElfArchitecture) 501# define CannaLinkTmpSharedLibrary(tmpso,dlname,solist) \ 502 $(CC) -o tmpso $(SHLIBLDFLAGS) -Wl,-soname,dlname solist $(REQUIREDLIBS) BaseShLibReqs 503# elif defined(SVR4Architecture) 504# define CannaLinkTmpSharedLibrary(tmpso,dlname,solist) \ 505 $(CCENVSETUP) $(LD) -o tmpso $(SHLIBLDFLAGS) -h dlname solist $(REQUIREDLIBS) BaseShLibReqs 506# else 507# error unsupported platform 508# endif 509/* CannaLinkTmpSharedLibrary */ 510 511# define CannaSharedLibraryTarget(libname,rev,solist,down,up) @@\ 512AllTarget(CannaLongShLib(libname,rev)) @@\ 513 @@\ 514CannaLongShLib(libname,rev): solist $(EXTRALIBRARYDEPS) @@\ 515 $(RM) $@~ @@\ 516 @SONAME=`echo $@ | sed 's/\.[^\.]*$$//'`; set -x; \ @@\ 517 (cd down; CannaLinkTmpSharedLibrary(up/$@~,$$SONAME,solist)); \ @@\ 518 $(RM) $$SONAME; $(LN) $@ $$SONAME @@\ 519 $(RM) $@ @@\ 520 $(MV) $@~ $@ @@\ 521 @if $(SOSYMLINK); then (set -x; \ @@\ 522 $(RM) CannaShortShLib(libname); \ @@\ 523 $(LN) $@ CannaShortShLib(libname)); fi @@\ 524 @@\ 525clean:: @@\ 526 @MAJREV=`expr rev : '\([^.]*\)'`; \ @@\ 527 set -x; $(RM) CannaLongShLib(libname,$$MAJREV) @@\ 528 $(RM) CannaLongShLib(libname,rev) CannaShortShLib(libname) 529/* CannaSharedLibraryTarget */ 530# define CannaInstallSharedLibrary(libname,rev,dest) @@\ 531install:: CannaLongShLib(libname,rev) @@\ 532 MakeDir($(DESTDIR)dest) @@\ 533 $(INSTALL) $(INSTALLFLAGS) $(INSTBINFLAGS) CannaLongShLib(libname,rev) $(DESTDIR)dest @@\ 534 @T=`echo $(DESTDIR)dest/CannaLongShLib(libname,rev) | sed 's/\.[^\.]*$$//'`;\ 535 set -x; $(RM) $$T && $(LN) CannaLongShLib(libname,rev) $$T @@\ 536 @if $(SOSYMLINK); then (set -x; \ 537 $(RM) $(DESTDIR)dest/CannaShortShLib(libname); \ @@\ 538 $(LN) CannaLongShLib(libname,rev) $(DESTDIR)dest/CannaShortShLib(libname)); fi 539/* CannaInstallSharedLibrary */ 540 541#elif defined(CYGWIN_DLL) 542/* libname-def.cpp����Τ����ݤʤΤ�X��SharedLibraryTarget���� */ 543# define CannaSharedLibraryTarget(libname,rev,solist,down,up) @@\ 544AllTarget(Concat3(lib,libname,.dll)) @@\ 545 @@\ 546Concat3(lib,libname,.dll): solist @@\ 547 RemoveFile(LibraryTargetName(libname)) @@\ 548 RemoveFile(Concat3(lib,libname,.dll)) @@\ 549 gcc -shared -nostartfiles -Wl,--out-implib=Concat(lib,libname.a) -o Concat3(lib,libname,.dll) solist $(REQUIREDLIBS) @@\ 550 @@\ 551clean:: @@\ 552 RemoveFile(LibraryTargetName(libname)) @@\ 553 RemoveFile(Concat3(lib,libname,.dll)) 554/* CannaSharedLibraryTarget */ 555/* 4.3.0�Ǥϥ饤�֥���̿̾���ѹ�����Ƥ���褦�ʤΤǸŤ�̿̾��Ȥ� */ 556# define CannaInstallSharedLibrary(libname,rev,dest) @@\ 557InstallTarget(install,LibraryTargetName(libname),$(INSTLIBFLAGS),$(USRLIBDIR)) @@\ 558InstallTarget(install,Concat3(lib,libname,.dll),$(INSTBINFLAGS),$(BINDIR)) 559/* CannaInstallSharedLibrary */ 560 561#elif defined(RsArchitecture) 562/* �ʲ��� IBM ���ø��θ�Ȫ����(furuhata@trl.ibm.co.jp)�ˤ���ޤ��� */ 563# define CannaSharedLibraryTarget(libname,rev,solist,down,up) @@\ 564AllTarget(Concat(lib,libname.a)) @@\ 565 @@\ 566Concat(lib,libname.a): solist $(UNSHAREDOBJS) @@\ 567 $(RM) $@~ shr.o @@\ 568 (cd down; $(AR) up/$@~ solist) @@\ 569 dump -g $@~ | sed -n -e 's/^[ ]*[0-9][0-9]*[ ]*\([^ .][^ ]*\)$$/\1/p' > $@.syms @@\ 570 $(LD) -o shr.o $@~ -H512 -T512 -bM\:SRE -bE\:$@.syms $(REQUIREDLIBS) -lc -lm -L$(libCannaDir) @@\ 571 $(RM) $@~ @@\ 572 $(AR) $@~ shr.o $(UNSHAREDOBJS) @@\ 573 $(RM) $@ shr.o @@\ 574 $(MV) $@~ $@ @@\ 575 @@\ 576clean:: @@\ 577 $(RM) Concat(lib,libname.a) 578/* CannaSharedLibraryTarget */ 579#endif /* Special link rules */ 580 581/* ɬ�פ˱�����X�Υ롼����� */ 582#ifdef CannaSharedLibraryTarget 583# ifdef SharedLibraryTarget 584# undef SharedLibraryTarget 585# endif 586# define SharedLibraryTarget CannaSharedLibraryTarget 587#endif 588 589#ifdef CannaInstallSharedLibrary 590# ifdef InstallSharedLibrary 591# undef InstallSharedLibrary 592# endif 593# define InstallSharedLibrary CannaInstallSharedLibrary 594#endif 595 596#ifdef LinkBuildLibrary 597# undef LinkBuildLibrary 598#endif 599#define LinkBuildLibrary(lib) $(_NULLCMD_) 600 601#if defined(DarwinArchitecture) && OSMajorVersion >= 7 \ 602 && defined(XFree86Version) && defined(XF86_VERSION_NUMERIC) 603# if XFree86Version < XF86_VERSION_NUMERIC(4, 3, 99, 16, 0) 604# ifdef CppSedMagic 605# undef CppSedMagic 606# endif 607# define CppSedMagic sed -e '/^# *[0-9][0-9]* *.*$$/d' -e '/# *pragma /d' -e '/^XCOMM$$/s//#/' -e '/^XCOMM[^a-zA-Z0-9_]/s/^XCOMM/#/' 608# endif 609#endif /* Apple X11 and MacOS X 10.3 */ 610 611/* �ʲ�������礱�Ƥ�����Τ����������� */ 612#ifndef ProgramTargetName 613# if defined(OS2Architecutre) || defined(cygwinArchitecture) 614# define ProgramTargetName(target) Concat(target,.exe) 615# else 616# define ProgramTargetName(target) target 617# endif 618#endif /* ProgramTargetName */ 619 620#ifndef MakeDirectoriesLong 621# define MakeDirectoriesLong(step,dirs,owner,group) @@\ 622step:: @@\ 623 @case '${MFLAGS}' in *[i]*) set +e;; esac; @@\ 624 DirFailPrefix@for i in dirs; do if [ -d $(DESTDIR)$$i ]; then \ @@\ 625 set +x; else (set -x; $(MKDIRHIER) $(DESTDIR)$$i;$(CHOWN) owner $(DESTDIR)$$i;$(CHGRP) group $(DESTDIR)$$i); fi; \ @@\ 626 done 627#endif /* MakeDirectoriesLong */ 628 629#ifndef BaseShLibReqs 630# define BaseShLibReqs 631#endif 632