From df55e1d9f53c5f622ccf9a52999315822d66e943 Mon Sep 17 00:00:00 2001 From: Jaidyn Ann Date: Wed, 19 May 2021 16:12:19 -0500 Subject: [PATCH] Switch from Jam to Make --- Jamfile | 10 - Jamrules | 70 ---- Makefile | 18 + Makefile.common | 5 + application/ChatWindow.cpp | 6 +- application/Jamfile | 71 ---- application/Makefile | 174 ++++++++++ application/TheApp.cpp | 6 +- application/views/CayaRenderView.cpp | 8 +- application/views/CayaRenderView.h | 7 +- application/views/ContactInfoWindow.cpp | 6 +- application/views/ContactPopUp.cpp | 7 +- application/views/ReplicantStatusView.cpp | 8 +- application/views/StatusView.cpp | 6 +- build/jam/BuildSettings | 113 ------- build/jam/CheckRules | 70 ---- build/jam/ConfigRules | 146 -------- build/jam/DistroRules | 35 -- build/jam/FileRules | 31 -- build/jam/HelperRules | 52 --- build/jam/InstallRules | 27 -- build/jam/MainBuildRules | 385 ---------------------- build/jam/OverriddenJamRules | 218 ------------ build/jam/PackageRules | 247 -------------- build/jam/UserBuildConfig.sample | 63 ---- libs/Jamfile | 10 - libs/Makefile | 14 + libs/libgloox/Jamfile | 112 ------- libs/libimcomm/Jamfile | 12 - libs/libinterface/Jamfile | 14 - libs/libinterface/Makefile | 142 ++++++++ libs/libinterface/ToolButton.cpp | 4 +- libs/libmsn/Jamfile | 38 --- libs/librunview/Jamfile | 23 -- libs/librunview/Makefile | 140 ++++++++ libs/libsupport/Jamfile | 9 - libs/libsupport/KeyMap.h | 2 +- libs/libsupport/Makefile | 137 ++++++++ libs/libyahoo2/Jamfile | 24 -- protocols/Jamfile | 8 - protocols/Makefile | 8 + protocols/Makefile.common | 2 + protocols/aim/Jamfile | 19 -- protocols/msn/Jamfile | 21 -- protocols/xmpp/JabberHandler.cpp | 4 +- protocols/xmpp/JabberHandler.h | 34 +- protocols/xmpp/Jamfile | 46 --- protocols/xmpp/Makefile | 140 ++++++++ protocols/yahoo/Jamfile | 21 -- 49 files changed, 838 insertions(+), 1935 deletions(-) delete mode 100644 Jamfile delete mode 100644 Jamrules create mode 100644 Makefile create mode 100644 Makefile.common delete mode 100644 application/Jamfile create mode 100644 application/Makefile delete mode 100644 build/jam/BuildSettings delete mode 100644 build/jam/CheckRules delete mode 100644 build/jam/ConfigRules delete mode 100644 build/jam/DistroRules delete mode 100644 build/jam/FileRules delete mode 100644 build/jam/HelperRules delete mode 100644 build/jam/InstallRules delete mode 100644 build/jam/MainBuildRules delete mode 100644 build/jam/OverriddenJamRules delete mode 100644 build/jam/PackageRules delete mode 100644 build/jam/UserBuildConfig.sample delete mode 100644 libs/Jamfile create mode 100644 libs/Makefile delete mode 100644 libs/libgloox/Jamfile delete mode 100644 libs/libimcomm/Jamfile delete mode 100644 libs/libinterface/Jamfile create mode 100644 libs/libinterface/Makefile delete mode 100644 libs/libmsn/Jamfile delete mode 100644 libs/librunview/Jamfile create mode 100644 libs/librunview/Makefile delete mode 100644 libs/libsupport/Jamfile create mode 100644 libs/libsupport/Makefile delete mode 100644 libs/libyahoo2/Jamfile delete mode 100644 protocols/Jamfile create mode 100644 protocols/Makefile create mode 100644 protocols/Makefile.common delete mode 100644 protocols/aim/Jamfile delete mode 100644 protocols/msn/Jamfile delete mode 100644 protocols/xmpp/Jamfile create mode 100644 protocols/xmpp/Makefile delete mode 100644 protocols/yahoo/Jamfile diff --git a/Jamfile b/Jamfile deleted file mode 100644 index 53c5394..0000000 --- a/Jamfile +++ /dev/null @@ -1,10 +0,0 @@ -SubDir TOP ; - -# Include all the components -SubInclude TOP libs ; -SubInclude TOP application ; -SubInclude TOP protocols ; -SubInclude TOP smileys ; - -UninstallTarget $(CAYA_DIRECTORY) ; -UninstallTarget $(SYSTEM_INCLUDE_DIRECTORY)/caya ; diff --git a/Jamrules b/Jamrules deleted file mode 100644 index 907bd11..0000000 --- a/Jamrules +++ /dev/null @@ -1,70 +0,0 @@ -# The directories used by the build. -BUILD_DIR = [ FDirName $(TOP) build ] ; -JAM_DIR = [ FDirName $(BUILD_DIR) jam ] ; -SCRIPTS_DIR = [ FDirName $(JAM_DIR) scripts ] ; -GENERATED_DIR = [ FDirName $(TOP) generated ] ; -DISTRO_DIR = [ FDirName $(TOP) generated distro ] ; -FULL_DISTRO_DIR = [ FDirName $(TOP) generated fulldistro ] ; -PACKAGE_DIR = [ FDirName $(GENERATED_DIR) packages ] ; -PACKAGE_OBJECT_DIR = [ FDirName $(PACKAGE_DIR) objects ] ; - -##------------------------------------------------------------------- -## Defines -##------------------------------------------------------------------- -VERSION = 0.0.1 ; -DEFINES += VERSION=\"\\\"$(VERSION)\\\"\" ; -DEFINES += BUILD_DATE=\"\\\"$(JAMDATE)\\\"\" ; -CHGRP = ; -CHOWN = ; - -# Include BuildConfig generated by configure -{ - local buildConfig = [ Glob $(GENERATED_DIR) : BuildConfig ] ; - if $(buildConfig) { - LOCATE on BuildConfig = $(GENERATED_DIR) ; - include BuildConfig ; - } else { - Exit "Run ./configure first!" ; - } -} - -# Include UserBuildConfig -{ - local userBuildConfig = [ Glob $(JAM_DIR) : UserBuildConfig ] ; - if $(userBuildConfig) { - LOCATE on UserBuildConfig = $(JAM_DIR) ; - include UserBuildConfig ; - } -} - -# Cache files for header scanning and jamfile caching. -HCACHEFILE = header_cache ; -JCACHEFILE = jamfile_cache ; -LOCATE on $(HCACHEFILE) $(JCACHEFILE) = $(GENERATED_DIR) ; - -# Perform configuration checks -include [ FDirName $(JAM_DIR) CheckRules ] ; -CheckGccPlatform ; - -CheckOpenSSL ; -if ! $(HAVE_OPENSSL) { - Echo "Warning OpenSSL is missing!" ; - exit 0 ; -} - -CheckExpat ; -if ! $(HAVE_EXPAT) { - Echo "Warning Expat is missing!" ; - exit 1 ; -} - -# Include jam scripts -include [ FDirName $(JAM_DIR) HelperRules ] ; -include [ FDirName $(JAM_DIR) ConfigRules ] ; -include [ FDirName $(JAM_DIR) OverriddenJamRules ] ; -include [ FDirName $(JAM_DIR) MainBuildRules ] ; -include [ FDirName $(JAM_DIR) FileRules ] ; -include [ FDirName $(JAM_DIR) InstallRules ] ; -include [ FDirName $(JAM_DIR) PackageRules ] ; -include [ FDirName $(JAM_DIR) DistroRules ] ; -include [ FDirName $(JAM_DIR) BuildSettings ] ; diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..252c3b3 --- /dev/null +++ b/Makefile @@ -0,0 +1,18 @@ +.DEFAULT_GOAL := default + +caya: + $(MAKE) -f application/Makefile + +protocols: + $(MAKE) -f protocols/Makefile +libs: + $(MAKE) -f libs/Makefile + +clean: + $(MAKE) -f application/Makefile clean + +all: libs protocols caya + +.PHONY: libs protocols + +default: all diff --git a/Makefile.common b/Makefile.common new file mode 100644 index 0000000..4bdf72a --- /dev/null +++ b/Makefile.common @@ -0,0 +1,5 @@ +LIBPATHS = $(OBJ_DIR) +PROTOCOL_DIR = $(OBJ_DIR)/protocols/ + +DEFINES := VERSION="\"0.0.2\"" BUILD_DATE="\"$(shell date +"%Y-%m-%d %H:%M")\"" + diff --git a/application/ChatWindow.cpp b/application/ChatWindow.cpp index 6909306..f11bcd6 100644 --- a/application/ChatWindow.cpp +++ b/application/ChatWindow.cpp @@ -6,6 +6,8 @@ * Andrea Anzani, andrea.anzani@gmail.com */ +#include "ChatWindow.h" + #include #include #include @@ -24,11 +26,11 @@ #include #include -#include "BitmapView.h" +#include + #include "CayaMessages.h" #include "CayaProtocolMessages.h" #include "CayaPreferences.h" -#include "ChatWindow.h" #include "ContactLinker.h" #include "EditingFilter.h" #include "CayaConstants.h" diff --git a/application/Jamfile b/application/Jamfile deleted file mode 100644 index f25b1fe..0000000 --- a/application/Jamfile +++ /dev/null @@ -1,71 +0,0 @@ -SubDir TOP application ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libjabber ] ; -SubDirSysHdrs [ FDirName $(TOP) libs librunview ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libinterface ] ; -SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ; - -SEARCH_SOURCE += [ FDirName $(TOP) application preferences ] ; -SEARCH_SOURCE += [ FDirName $(TOP) application views ] ; - -Application Caya : - AboutWindow.cpp - Account.cpp - AccountManager.cpp - CayaProtocolAddOn.cpp - CayaUtils.cpp - ChatWindow.cpp - ContactLinker.cpp - EditingFilter.cpp - ImageCache.cpp - Main.cpp - MainWindow.cpp - Notifier.cpp - ProtocolLooper.cpp - ProtocolManager.cpp - ProtocolSettings.cpp - Server.cpp - TheApp.cpp - WindowsManager.cpp - - # preferences - AccountDialog.cpp - AccountListItem.cpp - AccountView.cpp - CayaPreferences.cpp - PreferencesDialog.cpp - PreferencesAccounts.cpp - PreferencesBehavior.cpp - PreferencesReplicant.cpp - PreferencesChatWindow.cpp - - # views - ContactPopUp.cpp - SearchBarTextControl.cpp - NicknameTextControl.cpp - RosterItem.cpp - RosterListView.cpp - ContactInfoWindow.cpp - StatusMenuItem.cpp - StatusView.cpp - CayaRenderView.cpp - ReplicantStatusView.cpp - ReplicantMenuItem.cpp - : be $(TARGET_LIBSTDC++) translation expat - libinterface.a librunview.a libsupport.a - : Caya.rdef -; - -Depends Caya : libinterface.a ; -Depends Caya : librunview.a ; -Depends Caya : libsupport.a ; - -LINKFLAGS on Caya += -L$(EXPAT_LIBRARY_DIR) ; - -InstallBin $(CAYA_DIRECTORY) : Caya ; - -InstallFile $(SYSTEM_INCLUDE_DIRECTORY)/caya : CayaConstants.h ; -InstallFile $(SYSTEM_INCLUDE_DIRECTORY)/caya : CayaProtocol.h ; -InstallFile $(SYSTEM_INCLUDE_DIRECTORY)/caya : CayaProtocolMessages.h ; diff --git a/application/Makefile b/application/Makefile new file mode 100644 index 0000000..3141872 --- /dev/null +++ b/application/Makefile @@ -0,0 +1,174 @@ +## Haiku Generic Makefile v2.6 ## + +## Fill in this file to specify the project being created, and the referenced +## Makefile-Engine will do all of the hard work for you. This handles any +## architecture of Haiku. +## +## For more information, see: +## file:///system/develop/documentation/makefile-engine.html + +# The name of the binary. +NAME = Caya + +# The type of binary, must be one of: +# APP: Application +# SHARED: Shared library or add-on +# STATIC: Static library archive +# DRIVER: Kernel driver +TYPE = APP + +# If you plan to use localization, specify the application's MIME signature. +APP_MIME_SIG = application/x-vnd.caya.Caya + +# The following lines tell Pe and Eddie where the SRCS, RDEFS, and RSRCS are +# so that Pe and Eddie can fill them in for you. +#%{ +# @src->@ + +# Specify the source files to use. Full paths or paths relative to the +# Makefile can be included. All files, regardless of directory, will have +# their object files created in the common object directory. Note that this +# means this Makefile will not work correctly if two source files with the +# same name (source.c or source.cpp) are included from different directories. +# Also note that spaces in folder names do not work well with this Makefile. +SRCS = \ + application/AboutWindow.cpp \ + application/Account.cpp \ + application/AccountManager.cpp \ + application/CayaProtocolAddOn.cpp \ + application/CayaUtils.cpp \ + application/ChatWindow.cpp \ + application/ContactLinker.cpp \ + application/EditingFilter.cpp \ + application/ImageCache.cpp \ + application/Main.cpp \ + application/MainWindow.cpp \ + application/Notifier.cpp \ + application/ProtocolLooper.cpp \ + application/ProtocolManager.cpp \ + application/ProtocolSettings.cpp \ + application/Server.cpp \ + application/TheApp.cpp \ + application/WindowsManager.cpp \ + application/preferences/AccountDialog.cpp \ + application/preferences/AccountListItem.cpp \ + application/preferences/AccountView.cpp \ + application/preferences/CayaPreferences.cpp \ + application/preferences/PreferencesDialog.cpp \ + application/preferences/PreferencesAccounts.cpp \ + application/preferences/PreferencesBehavior.cpp \ + application/preferences/PreferencesReplicant.cpp \ + application/preferences/PreferencesChatWindow.cpp \ + application/views/ContactPopUp.cpp \ + application/views/SearchBarTextControl.cpp \ + application/views/NicknameTextControl.cpp \ + application/views/RosterItem.cpp \ + application/views/RosterListView.cpp \ + application/views/ContactInfoWindow.cpp \ + application/views/StatusMenuItem.cpp \ + application/views/StatusView.cpp \ + application/views/CayaRenderView.cpp \ + application/views/ReplicantStatusView.cpp \ + application/views/ReplicantMenuItem.cpp + + +# Specify the resource definition files to use. Full or relative paths can be +# used. +RDEFS = Caya.rdef + +# Specify the resource files to use. Full or relative paths can be used. +# Both RDEFS and RSRCS can be utilized in the same Makefile. +RSRCS = + +# End Pe/Eddie support. +# @<-src@ +#%} + +# Specify libraries to link against. +# There are two acceptable forms of library specifications: +# - if your library follows the naming pattern of libXXX.so or libXXX.a, +# you can simply specify XXX for the library. (e.g. the entry for +# "libtracker.so" would be "tracker") +# +# - for GCC-independent linking of standard C++ libraries, you can use +# $(STDCPPLIBS) instead of the raw "stdc++[.r4] [supc++]" library names. +# +# - if your library does not follow the standard library naming scheme, +# you need to specify the path to the library and it's name. +# (e.g. for mylib.a, specify "mylib.a" or "path/mylib.a") +LIBS = be expat interface runview shared support translation $(STDCPPLIBS) + + +# Specify additional paths to directories following the standard libXXX.so +# or libXXX.a naming scheme. You can specify full paths or paths relative +# to the Makefile. The paths included are not parsed recursively, so +# include all of the paths where libraries must be found. Directories where +# source files were specified are automatically included. +LIBPATHS = + +# Additional paths to look for system headers. These use the form +# "#include
". Directories that contain the files in SRCS are +# NOT auto-included here. +SYSTEM_INCLUDE_PATHS = libs/ + +# Additional paths paths to look for local headers. These use the form +# #include "header". Directories that contain the files in SRCS are +# automatically included. +LOCAL_INCLUDE_PATHS = + +# Specify the level of optimization that you want. Specify either NONE (O0), +# SOME (O1), FULL (O3), or leave blank (for the default optimization level). +OPTIMIZE := + +# Specify the codes for languages you are going to support in this +# application. The default "en" one must be provided too. "make catkeys" +# will recreate only the "locales/en.catkeys" file. Use it as a template +# for creating catkeys for other languages. All localization files must be +# placed in the "locales" subdirectory. +LOCALES = + +# Specify all the preprocessor symbols to be defined. The symbols will not +# have their values set automatically; you must supply the value (if any) to +# use. For example, setting DEFINES to "DEBUG=1" will cause the compiler +# option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" would pass +# "-DDEBUG" on the compiler's command line. +DEFINES := + +# Specify the warning level. Either NONE (suppress all warnings), +# ALL (enable all warnings), or leave blank (enable default warnings). +WARNINGS = + +# With image symbols, stack crawls in the debugger are meaningful. +# If set to "TRUE", symbols will be created. +SYMBOLS := + +# Includes debug information, which allows the binary to be debugged easily. +# If set to "TRUE", debug info will be created. +DEBUGGER := + +# Specify any additional compiler flags to be used. +COMPILER_FLAGS = + +# Specify any additional linker flags to be used. +LINKER_FLAGS = + +# Specify the version of this binary. Example: +# -app 3 4 0 d 0 -short 340 -long "340 "`echo -n -e '\302\251'`"1999 GNU GPL" +# This may also be specified in a resource. +APP_VERSION := + +# (Only used when "TYPE" is "DRIVER"). Specify the desired driver install +# location in the /dev hierarchy. Example: +# DRIVER_PATH = video/usb +# will instruct the "driverinstall" rule to place a symlink to your driver's +# binary in ~/add-ons/kernel/drivers/dev/video/usb, so that your driver will +# appear at /dev/video/usb when loaded. The default is "misc". +DRIVER_PATH = + +## Include the Makefile-Engine +DEVEL_DIRECTORY := /boot/system/develop/ +include $(DEVEL_DIRECTORY)/etc/makefile-engine + +include Makefile.common + +CC = g++ diff --git a/application/TheApp.cpp b/application/TheApp.cpp index 5ae82a0..5bfe15c 100644 --- a/application/TheApp.cpp +++ b/application/TheApp.cpp @@ -8,22 +8,24 @@ * Pier Luigi Fiorini, pierluigi.fiorini@gmail.com */ +#include "TheApp.h" + #include #include #include #include +#include + #include "AboutWindow.h" #include "Caya.h" #include "CayaMessages.h" -#include "Emoticor.h" #include "FilePanel.h" #include "MainWindow.h" #include "ProtocolManager.h" #include "ReplicantStatusView.h" #include "Server.h" -#include "TheApp.h" TheApp::TheApp() : diff --git a/application/views/CayaRenderView.cpp b/application/views/CayaRenderView.cpp index 101d28c..7874800 100644 --- a/application/views/CayaRenderView.cpp +++ b/application/views/CayaRenderView.cpp @@ -1,7 +1,9 @@ -#include "CayaPreferences.h" #include "CayaRenderView.h" -#include "Theme.h" -#include "RunView.h" + +#include +#include + +#include "CayaPreferences.h" CayaRenderView::CayaRenderView(const char *name, const char* smileyConfig) diff --git a/application/views/CayaRenderView.h b/application/views/CayaRenderView.h index 5709b9f..7e58be1 100644 --- a/application/views/CayaRenderView.h +++ b/application/views/CayaRenderView.h @@ -1,12 +1,14 @@ #ifndef _CayaRenderView_H #define _CayaRenderView_H_ -#include "RunView.h" -#include "SmileTextRender.h" +#include + +#include class RunView; class Theme; + enum CayaRenderViewColors { COL_URL = 0, COL_TIMESTAMP, @@ -29,6 +31,7 @@ enum { MAX_RENDERS }; + class CayaRenderView : public RunView { public: diff --git a/application/views/ContactInfoWindow.cpp b/application/views/ContactInfoWindow.cpp index 8c2a8be..c34ba16 100644 --- a/application/views/ContactInfoWindow.cpp +++ b/application/views/ContactInfoWindow.cpp @@ -6,6 +6,8 @@ * Casalinuovo Dario */ +#include "ContactInfoWindow.h" + #include #include #include @@ -18,7 +20,8 @@ #include #include -#include "BitmapView.h" +#include + #include "CayaMessages.h" #include "CayaProtocolMessages.h" #include "ContactLinker.h" @@ -27,7 +30,6 @@ #include "CayaUtils.h" #include "NotifyMessage.h" -#include "ContactInfoWindow.h" ContactInfoWindow::ContactInfoWindow(ContactLinker* linker) : diff --git a/application/views/ContactPopUp.cpp b/application/views/ContactPopUp.cpp index 4b45943..2e399c3 100644 --- a/application/views/ContactPopUp.cpp +++ b/application/views/ContactPopUp.cpp @@ -6,16 +6,19 @@ * Pier Luigi Fiorini, pierluigi.fiorini@gmail.com */ +#include "ContactPopUp.h" + #include #include #include #include -#include "BitmapView.h" +#include + #include "ContactLinker.h" -#include "ContactPopUp.h" #include "NotifyMessage.h" + const window_feel kMenuWindowFeel = window_feel(B_NORMAL_WINDOW_FEEL); const int32 kNickChanged = 'NICH'; diff --git a/application/views/ReplicantStatusView.cpp b/application/views/ReplicantStatusView.cpp index 3a635f6..f10a90f 100644 --- a/application/views/ReplicantStatusView.cpp +++ b/application/views/ReplicantStatusView.cpp @@ -6,6 +6,10 @@ * Dario Casalinuovo */ +#include "ReplicantStatusView.h" + +#include + #include #include #include @@ -20,19 +24,17 @@ #include #include +#include #include "AccountManager.h" -#include "BitmapView.h" #include "Caya.h" #include "CayaMessages.h" #include "CayaPreferences.h" #include "CayaProtocolMessages.h" #include "CayaUtils.h" #include "NicknameTextControl.h" -#include "ReplicantStatusView.h" #include "ReplicantMenuItem.h" -#include extern "C" _EXPORT BView *instantiate_deskbar_item(void); diff --git a/application/views/StatusView.cpp b/application/views/StatusView.cpp index a4a4ceb..1900baa 100644 --- a/application/views/StatusView.cpp +++ b/application/views/StatusView.cpp @@ -6,6 +6,8 @@ * Pier Luigi Fiorini, pierluigi.fiorini@gmail.com */ +#include "StatusView.h" + #include #include #include @@ -17,13 +19,13 @@ #include #include +#include #include "AccountManager.h" -#include "BitmapView.h" #include "CayaUtils.h" #include "NicknameTextControl.h" #include "StatusMenuItem.h" -#include "StatusView.h" + const int32 kSetNickname = 'stnk'; diff --git a/build/jam/BuildSettings b/build/jam/BuildSettings deleted file mode 100644 index 06d6b0b..0000000 --- a/build/jam/BuildSettings +++ /dev/null @@ -1,113 +0,0 @@ -# BuildSettings -# -# Setup global variables. - -# C and C++ flags -if $(OSPLAT) = PPC { - # filter out -nosyspath - CFLAGS = [ FFilter $(CFLAGS) : -nosyspath ] ; - C++FLAGS = [ FFilter $(C++FLAGS) : -nosyspath ] ; - LINKFLAGS += -warn -export pragma ; -} - -# Use copyattr for copying. -CP = copyattr --data ; - -# Default paths for bison and flex: -BISON = bison ; -LEX = flex ; - -# mkdir shall not fail, if the directory already exists. -MKDIR = mkdir -p ; - -# by default we do not strip and do not build tests: -STRIP_APPS ?= 0 ; -BUILD_TESTS ?= 0 ; - -# Enable debugging by default -DEBUG ?= 1 ; - -rule SetUpSubDirBuildSettings -{ - # SetUpSubDirBuildSettings ; - # - # Sets up the compiler flags and defines based on the WARNINGS, DEBUG, and - # OPTIMIZE variables. Also sets the locations for the targets (objects, - # libraries and executables). - # - # : Parameters as passed to the SubDir rule, i.e. the name of the - # TOP variable and the subdir tokens. - # - local dir = $(1) ; - - # warnings settings - if $(WARNINGS) != 0 { - if $(OSPLAT) = X86 { - CCFLAGS += -Wall -Wno-multichar -Wpointer-arith - -Wmissing-prototypes -Wcast-align -Wsign-compare ; - C++FLAGS += -Wall -Wno-multichar -Wno-ctor-dtor-privacy -Woverloaded-virtual - -Wconversion -Wpointer-arith -Wcast-align - -Wsign-compare -Wno-reorder -Wno-unknown-pragmas ; - } else { - CCFLAGS += -w on -requireprotos ; - } - } - - local gccString = ; - if $(IS_GCC4_PLATFORM) { - gccString += gcc4 ; - } else { - gccString += gcc2 ; - } - - local binModeString = ; - if $(DEBUG) && $(DEBUG) != 0 { - binModeString += debug ; - } else { - binModeString += release ; - } - - # debugging settings - if $(DEBUG) && $(DEBUG) != 0 { - OPTIMIZE = 0 ; - STRIP_APPS = 0 ; - DEFINES += DEBUG=$(DEBUG) BM_REF_DEBUGGING ; - CCFLAGS += -g ; - C++FLAGS += -g -fno-inline ; - LINKFLAGS += -g ; - } - - DISTRO_DIR = [ FDirName $(TOP) generated distro-$(OS:L)-$(OSPLAT:L)-$(gccString)-$(binModeString) ] ; - OBJECTS_DIR = [ FDirName $(TOP) generated objects-$(OS:L)-$(OSPLAT:L)-$(gccString)-$(binModeString) ] ; - - # optimization settings - if $(OPTIMIZE) = 0 { - if $(OSPLAT) = X86 { - OPTIM = -O0 ; - } else { - OPTIM = -O0 ; - } - } else { - if $(OSPLAT) = X86 { - OPTIM ?= -O3 -fstrict-aliasing ; - } else { - OPTIM ?= -O7 ; - } - } - - # setup objects location - local objdir = [ FDirName $(OBJECTS_DIR) $(dir[2-]) ] ; - SEARCH_SOURCE += $(objdir) ; - LOCATE_SOURCE = $(objdir) ; - LOCATE_TARGET = $(objdir) ; - - # setup main targets location - LOCATE_MAIN_TARGET ?= [ FDirName $(DISTRO_DIR) ] ; -} - -# The LOCATE_MAIN_TARGET variable shall be reset for each subdirectory. -AUTO_SET_UP_CONFIG_VARIABLES += LOCATE_MAIN_TARGET ; - -# Add the rules setting up the build settings for a subdirectory to the -# rules invoked by SubDir. -SUBDIRRULES += SetUpSubDirBuildSettings ; diff --git a/build/jam/CheckRules b/build/jam/CheckRules deleted file mode 100644 index aee11ae..0000000 --- a/build/jam/CheckRules +++ /dev/null @@ -1,70 +0,0 @@ -# CheckRules -# -# Common checks. - -rule CheckGccPlatform -{ - # CheckGccPlatform ; - # Detects if we are using gcc4 and set IS_GCC4_PLATFORM according. - - # First find out which gcc version the platform uses. - IS_GCC4_PLATFORM = ; - if $(OS) = HAIKU { - # Only Haiku might use gcc 4. We use the existence of a libstdc++.r4.so in - # /boot/develop/lib/x86 to judge whether this is a BeOS compatible and thus - # gcc 2 platform. This is not entirely correct, but should be good enough - # for the time being. - local haveLibStdC++.R4 = [ Glob /boot/system/develop/tools/lib : libstdc++.r4.so ] ; - if ! $(haveLibStdC++.R4) { - IS_GCC4_PLATFORM = 1 ; - Echo Using GCC4 platform ; - } - } -} - -rule CheckOpenSSL -{ - # CheckOpenSSL ; - # Check for OpenSSL and defined HAVE_OPENSSL according, it also defines - # OPENSSL_INCLUDE_DIR and OPENSSL_LIBRARY_DIR with location of respectively - # include and library files. - - HAVE_OPENSSL = ; - OPENSSL_INCLUDE_DIR = ; - OPENSSL_LIBRARY_DIR = ; - - local haveHeaders = [ Glob $(SYSTEM_INCLUDE_DIRECTORY)/openssl : ssl.h ] ; - if $(haveHeaders) { - OPENSSL_INCLUDE_DIR = $(SYSTEM_INCLUDE_DIRECTORY) ; - - local haveLibs = [ Glob $(SYSTEM_DEVELOP_LIB_DIRECTORY) : libssl.so ] ; - if $(haveLibs) { - OPENSSL_LIBRARY_DIR = $(SYSTEM_DEVELOP_LIB_DIRECTORY) ; - - Echo OpenSSL Headers: $(OPENSSL_INCLUDE_DIR) ; - Echo OpenSSL Libs: $(OPENSSL_LIBRARY_DIR) ; - } - HAVE_OPENSSL = $(haveLibs) ; - } -} - -rule CheckExpat -{ - HAVE_EXPAT = ; - EXPAT_INCLUDE_DIR = ; - EXPAT_LIBRARY_DIR = ; - - local haveHeaders = [ Glob $(SYSTEM_INCLUDE_DIRECTORY)/ : expat.h ] ; - if $(haveHeaders) { - EXPAT_INCLUDE_DIR = $(SYSTEM_INCLUDE_DIRECTORY)/ ; - - local haveLibs = [ Glob $(SYSTEM_DEVELOP_LIB_DIRECTORY) : libexpat.so ] ; - if $(haveLibs) { - EXPAT_LIBRARY_DIR = $(SYSTEM_DEVELOP_LIB_DIRECTORY) ; - - Echo Expat Headers: $(EXPAT_INCLUDE_DIR) ; - Echo Expat Libs: $(EXPAT_LIBRARY_DIR) ; - } - HAVE_EXPAT = $(haveLibs) ; - } -} diff --git a/build/jam/ConfigRules b/build/jam/ConfigRules deleted file mode 100644 index 082ec46..0000000 --- a/build/jam/ConfigRules +++ /dev/null @@ -1,146 +0,0 @@ -# ConfigRules -# -# Contains rules providing the config variable feature. It allows to set the -# values for certain variables for subdirectories in a central place. That is -# one can, for instance, specify in a file like UserBuildConfig for which -# directories to enable debugging, warnings, set special defines, compiler -# flags and the like without needing to edit the Jamfiles for the respective -# dirs. - -rule ConfigObject -{ - # ConfigObject ; - # - # Private rule. Returns the dummy object on which the config variables are - # set for a given subdir. - # - # : Parameters as passed to the SubDir rule, i.e. the name of the - # TOP variable and the subdir tokens. - # - local config = __config__ ; - local grist = [ FGrist root $(1) ] ; - return $(config:G=$(grist)) ; -} - -rule SetConfigVar -{ - # SetConfigVar : : [ : ] ; - # - # Sets a config variable for a specified directory to the given value. - # - # : The name of the variable to be set. - # : Parameters as passed to the SubDir rule, i.e. the name of the - # TOP variable and the subdir tokens. - # : The value to which the variable shall be set. - # : Either "global" or "local". The former implies that the variable - # value shall also be used for subdirectories (recursively), if - # for them the variable has not been set. The latter has the same - # effect regarding subdirs as if the variable for the directory - # is not set. Defaults to "global". - # - local var = $(1[1]) ; - local config = [ ConfigObject $(2) ] ; - local scope = $(4) ; - if ! $(scope) { - scope = global ; - } - $(var) on $(config) = $(3) ; - __set_$(var) on $(config) = $(scope) ; -} - -rule AppendToConfigVar -{ - # AppendToConfigVar : : [ : ] ; - # - # Appends a value to a config variable for a specified directory. Shortcut - # for - # SetConfigVar : : [ ConfigVar : ] ; - # - # : The name of the variable to be set. - # : Parameters as passed to the SubDir rule, i.e. the name of the - # TOP variable and the subdir tokens. - # : The value which to append to the variables current value. - # : Either "global" or "local". The former implies that the variable - # value shall also be used for subdirectories (recursively), if - # for them the variable has not been set. The latter has the same - # effect regarding subdirs as if the variable for the directory - # is not set. Defaults to "global". - # - SetConfigVar $(1) : $(2) : [ ConfigVar $(1) : $(2) ] $(3) : $(4) ; -} - -rule ConfigVar -{ - # ConfigVar : [ : ] ; - # - # Returns the value of a configuration variable for a given subdir. - # If the variable is not set for the subdir, the rule is invoked - # recursively for the parent directory with the scope "global". When - # the root is reached without yielding a value, the value of the global - # variable is returned. - # - # : The name of the variable whose value shall be returned. - # : Parameters as passed to the SubDir rule, i.e. the name of the - # TOP variable and the subdir tokens. - # : If not given any scope passed to SetConfigVar for the given - # directory will be accepted, otherwise it must match the scope - # passed to SetConfigVar. - # - local var = $(1[1]) ; - local dir = $(2) ; - local config = [ ConfigObject $(dir) ] ; - local scope = $(3) ; - local varScope = [ on $(config) return $(__set_$(var)) ] ; - if ( ! $(scope) && $(varScope) ) - || ( $(scope) && $(scope) = $(varScope) ) - || ! $(dir) { - on $(config) return $($(var)) ; - } else { - dir = [ FReverse $(dir) ] ; - return [ ConfigVar $(var) : [ FReverse $(dir[2-]) ] : global ] ; - } -} - -rule SetUpConfigVars { - # SetUpConfigVars ; - # - # Sets the global variables defined in AUTO_SET_UP_CONFIG_VARIABLES to the - # values specified for the subdirectory . - # - # : Parameters as passed to the SubDir rule, i.e. the name of the - # TOP variable and the subdir tokens. - # - local dir = $(1) ; - - # Backup the global variable value on first invocation, otherwise restore - # them, so that ConfigVar returns the right values for not explicity set - # local variables. - local var ; - if ! $(__config_var_backup__) { - __config_var_backup__ = true ; - for var in $(AUTO_SET_UP_CONFIG_VARIABLES) { - __config_var_backup_$(var)__ = $($(var)) ; - } - } else { - for var in $(AUTO_SET_UP_CONFIG_VARIABLES) { - $(var) = $(__config_var_backup_$(var)__) ; - } - } - - # Set the variables to their configured values. - for var in $(AUTO_SET_UP_CONFIG_VARIABLES) { - $(var) = [ ConfigVar $(var) : $(dir) ] ; - } -} - -# Add the SetUpConfigVars rule to the rules that are invoked at the end of the -# SubDir rule. Prepend it, so that the variables are set up before any other -# rule is invoked. -SUBDIRRULES = SetUpConfigVars $(SUBDIRRULES) ; - -# Some config variables that should be set up automatically for subdirs. -AUTO_SET_UP_CONFIG_VARIABLES += - CCFLAGS C++FLAGS DEBUG DEFINES HDRS LINKFLAGS OPTIM OPTIMIZE - SYSHDRS WARNINGS -; diff --git a/build/jam/DistroRules b/build/jam/DistroRules deleted file mode 100644 index e8b94a0..0000000 --- a/build/jam/DistroRules +++ /dev/null @@ -1,35 +0,0 @@ -# DistroRules -# -# Rules to archive binary distributions. - -rule Distro -{ - local target = $(1) ; - - NotFile $(target) ; - Always $(target) ; -} - -actions Distro -{ - echo "== Making distro $(DISTRO_DIR) ==" ; - mimeset $(DISTRO_DIR) ; -} - -Depends fulldistro : distro ; - -rule FullDistro -{ - local target = $(1) ; - - NotFile $(target) ; - Always $(target) ; -} - -actions FullDistro -{ - echo "== Making full distro $(FULL_DISTRO_DIR) ==" ; - rm -rf $(FULL_DISTRO_DIR) ; - cp -a $(DISTRO_DIR) $(FULL_DISTRO_DIR) ; - mimeset $(FULL_DISTRO_DIR) ; -} diff --git a/build/jam/FileRules b/build/jam/FileRules deleted file mode 100644 index f13ff3d..0000000 --- a/build/jam/FileRules +++ /dev/null @@ -1,31 +0,0 @@ -# FileRules -# -# Rules for files and symbolic links. - -rule SymLink -{ - # SymLink : : ; - # Links to . - # is the exact link contents. No binding is done. - # If true, will be made a dependency - # of the `all' pseudo target, i.e. it will be made by default, and removed - # on `jam clean'. - - local target = $(1) ; - local source = $(2) ; - local makeDefaultDependencies = $(3) ; - if ! $(makeDefaultDependencies) { - makeDefaultDependencies = true ; - } - LINKCONTENTS on $(target) = $(source) ; - SymLink1 $(target) ; - if $(makeDefaultDependencies) = true { - LocalDepends files : $(target) ; - LocalClean clean : $(target) ; - } -} - -actions SymLink1 -{ - $(RM) "$(1)" && $(LN) -s "$(LINKCONTENTS)" "$(1)" -} diff --git a/build/jam/HelperRules b/build/jam/HelperRules deleted file mode 100644 index 0876ddf..0000000 --- a/build/jam/HelperRules +++ /dev/null @@ -1,52 +0,0 @@ -# HelperRules -# -# Helper rules without side effects. - -rule FFilter -{ - # FFilter : ; - # - # Removes all occurrences of in . - - local list = $(1) ; - local excludes = $(2) ; - local newList ; - local item ; - for item in $(list) { - local skip ; - local exclude ; - for exclude in $(excludes) { - if $(item) = $(exclude) { - skip = true ; - } - } - if ! $(skip) { - newList += $(item) ; - } - } - return $(newList) ; -} - -rule FSplitPath -{ - # FSplitPath ; - # - # Decomposes a path into its components. - # - # : The path to be decomposed. - # - local path = $(1:G=) ; - - local components ; - # $(path:D) for "/" is "/". Therefore the second condition. - while $(path:D) && $(path:D) != $(path) - { - # Note: $(path:B) returns "." for "..", but $(path:D=) is fine. - components = $(path:D=) $(components) ; - path = $(path:D) ; - } - components = $(components) ; - # Use this to return initial / - #components = $(path) $(components) ; - return $(components) ; -} diff --git a/build/jam/InstallRules b/build/jam/InstallRules deleted file mode 100644 index 80be960..0000000 --- a/build/jam/InstallRules +++ /dev/null @@ -1,27 +0,0 @@ -# InstallRules -# -# Missing rules for installation. - -rule InstallSymLink -{ - # InstallSymlink linkname : source ; - - LocalDepends install : $(>) ; - LocalDepends install : $(<) ; - LocalClean uninstall : $(<) ; - - NoCare $(>) ; - InstallSymLink1 $(<) : $(>) ; -} - -actions InstallSymLink1 -{ - $(RM) $(<) && $(LN) -s $(>) $(<) -} - -rule UninstallTarget -{ - # UninstallTarget target ; - - LocalClean uninstall : $(<) ; -} diff --git a/build/jam/MainBuildRules b/build/jam/MainBuildRules deleted file mode 100644 index 80db46b..0000000 --- a/build/jam/MainBuildRules +++ /dev/null @@ -1,385 +0,0 @@ -# MainBuildRules -# -# Rules that specify what to build and how to do it. - -rule AddResources -{ - # AddResources : ; - # - # Adds resources to the application. - # - # : Name of the application. - # : List of resource files. Grist will be set. - # - local resfiles ; - local file ; - for file in $(2) { - if ! $(file:G) { - file = [ FGristFiles $(file) ] ; - } - resfiles += $(file) ; - } - - SEARCH on $(resfile) += $(SEARCH_SOURCE) ; - - for file in $(resfiles) { - if $(file:S) = .rdef { - local rdef = $(file) ; - file = $(rdef:S=.rsrc) ; - ResComp $(file) : $(rdef) ; - } - RESFILES on $(1) += $(file) ; - } -} - -rule Application -{ - # Application : : : ; - # - # Creates an application from sources. - # - # : Name of the application. Grist is allowed. - # : List of source files. Grist will be set. - # : List of libraries to link against. - # : List of resource files. Grist will be set. - # - local app = $(1) ; - local sources = $(2) ; - local libs = $(3) ; - local res = $(4) ; - - AddResources $(app) : $(res) ; - Main $(app) : $(sources) ; - MakeLocate $(app) : $(LOCATE_MAIN_TARGET) ; - LinkAgainst $(app) : $(libs) ; -} - -actions Strip -{ - strip "$(1)" ; -} - -rule AddOn -{ - # AddOn : : : ; - # - # Creates an add-on from sources. - # - # : Name of the add-on. Grist is allowed. - # : List of source files. Grist will be set. - # : List of libraries to link against. - # : List of resource files. Grist will be set. - # - SharedLibrary $(1) : $(2) : $(3) : $(4) ; -} - -rule SharedLibrary -{ - # SharedLibrary : : : ; - # - # Creates a shared library from sources. - # - # : Name of the shared library. Grist is allowed. - # : List of source files. Grist will be set. - # : List of libraries to link against. - # : List of resource files. Grist will be set. - # - local lib = $(1) ; - local sources = $(2) ; - local libs = $(3) ; - local res = $(4) ; - - AddResources $(lib) : $(res) ; - Main $(lib) : $(sources) ; - MakeLocate $(lib) : $(LOCATE_MAIN_TARGET) ; - local linkFlags ; - if $(OSPLAT) = X86 { - if $(IS_GCC4_PLATFORM) = 1 { - linkFlags = -shared ; - } else { - linkFlags = -nostart ; - } - linkFlags += -Xlinker -soname=\"$(lib)\" -Xlinker --no-undefined ; - } else { - linkFlags = -xms ; - } - LINKFLAGS on $(lib) = [ on $(lib) return $(LINKFLAGS) ] $(linkFlags) ; - LinkAgainst $(lib) : $(libs) ; -} - -rule StaticLibrary -{ - # StaticLibrary : ; - # - # Creates a static library from sources. - # - # : Name of the static library. Grist is allowed. - # : List of source files. Grist will be set. - # - local lib = $(1) ; - Library $(lib) : $(2) ; - MakeLocate $(lib) : $(LOCATE_MAIN_TARGET) ; - - # If KEEPOBJS is set, Library doesn't make the library depend on `lib'. - if $(KEEPOBJS) { - Depends lib : $(lib) ; - } -} - -rule LinkAgainst -{ - # LinkAgainst : ; - # - # Adds libraries to the list of libraries a (Main) target shall be linked - # against. - # - # : The name of the target for which to add libraries. - # : The libraries (actually arbitrary shared objects and static - # libraries) to be added. Valid elements are e.g. "be" or - # "libopenbeos.so" or "/boot/.../libfoo.so". If the basename starts - # with "lib" or the thingy has a dirname or grist, it is added to - # the NEEDLIBS variable (i.e. the file will be bound!), otherwise - # it is prefixed "-l" and added to LINKLIBS. If you want to specify - # a target that isn't a library and also has neither grist nor a - # dirname, you can prepend "" as grist; it will be - # stripped by this rule. - # - for i in $(>) - { - local isfile = ; - if $(i:D) || $(i:G) { - isfile = true ; - if $(i:G) = { - i = $(i:G=) ; - } - } else { - switch $(i:B) - { - # XXX: _APP_ and _KERNEL_ should not be needed for ELF. - case _APP_ : isfile = true ; - case _KERNEL_ : isfile = true ; - case lib* : isfile = true ; - case * : isfile = ; - } - if ! $(isfile) && ( $(i:S) = .so || $(i:S) = .o || $(i:S) = .a ) { - isfile = true ; - } - } - if $(isfile) { - NEEDLIBS on $(1) = [ on $(1) return $(NEEDLIBS) ] $(i) ; - Depends $(1) : $(i) ; - } else { - LINKLIBS on $(1) = [ on $(1) return $(LINKLIBS) ] -l$(i) ; - } - } -} - -rule XRes -{ - # XRes : ; - # - # Adds resources to a file. - # - # : The files to which resources shall be added. - # : The resource files. - # - if $(2) - { - Depends $(1) : $(2) ; - XRes1 $(1) : $(2) ; - } -} - -rule ResComp -{ - # ResComp : ; - # - # Creates a binary resource file from a rdef script. - # - # : The resource file. Grist is required. - # : The rdef script. Grist is required. - # - local defines ; - - on $(1) { - defines = $(DEFINES) ; - } - - DEFINES on $(1) = $(defines) ; - CCDEFS on $(1) = [ FDefines $(defines) ] ; - HDRS on $(1) = [ on $(1) FIncludes $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ] - $(HDRS_INCLUDES_SEPARATOR) ; - RCHDRS on $(1) = [ FRcIncludes $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ] ; - - SEARCH on $(2) += $(SEARCH_SOURCE) ; - MakeLocate $(1) : $(LOCATE_TARGET) ; - Depends $(1) : $(2) $(RC) ; - LocalClean clean : $(1) ; - ResComp1 $(1) : $(RC) $(2) ; -} - -# Note: We pipe the input files into the preprocessor, since *.rdef files are -# considered linker scripts, and thus we can use preprocessor features. -actions ResComp1 -{ - cat "$(2[2-])" | $(CC) -E $(CCDEFS) $(HDRS) - | egrep -va '^#' | $(2[1]) $(RCHDRS) --auto-names -o "$(1)" - -} - -actions XRes1 -{ - xres -o "$(1)" "$(2)" ; -} - -actions MimeSet -{ - mimeset -f "$(1)" ; -} - -rule LexC++ -{ - Depends $(1) : $(2) ; - MakeLocate $(1) : $(LOCATE_SOURCE) ; - Clean clean : $(1) ; -} - -actions LexC++ -{ - $(LEX) -i -P$(<:B) -o$(1) $(2) -} - -rule Bison -{ - local _h ; - - _h = $(1:S=.h) ; - - MakeLocate $(<) $(_h) : $(LOCATE_SOURCE) ; - - Depends $(<) : $(>) ; - BisonC++ $(<) : $(>) ; - Clean clean : $(<) $(_h) ; - - # make sure someone includes $(_h) else it will be - # a deadly independent target - - Includes $(<) : $(_h) ; -} - -actions BisonC++ -{ - $(BISON) -v -d -p $(2:B) -o $(1) $(2) -} - -rule Rez -{ - Depends $(<) : $(>) ; -} - -rule PreCompile -{ - # PreCompile : - # - # precompiles the given src (a headerfile) into the specified header. - # - local _hdr = $(1) ; - local _src = $(2) ; - MakeLocate $(_hdr) : $(LOCATE_TARGET) ; - PreComp $(_hdr) : $(_src) ; - Clean clean : $(_hdr) ; -} - -rule PreComp -{ - Depends $(<) : $(>) ; -} - -actions PreComp -{ - mwcc -precompile $(<) -lang cplus "$(>)" ; -} - -rule SubDirSysHdrs -{ - # SubDirSysHdrs ; - # - # Adds directories to the system include search paths for the current - # subdirectory. Counterpart of SubDirHdrs which adds non-system include - # search paths. - # - # : The directories to be added to the current subdir's system - # include search paths. - # - SUBDIRSYSHDRS += [ FDirName $(1) ] ; -} - -rule ObjectSysHdrs -{ - # SubDirSysHdrs : ; - # - # Adds directories to the system include search paths for the given - # sources or objects. Counterpart of ObjectHdrs which adds non-system - # include search paths. - # - # NOTE: This rule must be invoked *after* the rule that generates the - # objects. - # - # : The targets for which to add system include - # search paths. - # : The directories to be added to the given objects' system - # include search paths. - # - - local s ; - for s in [ FGristFiles $(<:S=$(SUFOBJ)) ] { - SYSHDRS on $(s) += $(>) ; - CCHDRS on $(s) = [ on $(s) FIncludes $(HDRS) ] - $(HDRS_INCLUDES_SEPARATOR) [ on $(s) FSysIncludes $(SYSHDRS) ] ; - } -} - - -# FSysIncludes ; -# -# Counterpart of FIncludes for system include search paths. -# -if $(OSPLAT) = X86 { - rule FSysIncludes { return -I$(<) ; } -} else { - rule FSysIncludes { return "-i "$(<) ; } -} - -# FRcIncludes ; -# -# Counterpart of FIncludes for *.rdef scripts. -# -rule FRcIncludes -{ - return "-I "$(<) ; -} - -# Variable referring to the STL. -if $(OSPLAT) = X86 { - if $(IS_GCC4_PLATFORM) = 1 { - TARGET_LIBSTDC++ = stdc++ ; - } else { - TARGET_LIBSTDC++ = stdc++.r4 ; - } -} else { - TARGET_LIBSTDC++ = mslcpp_4_0 ; -} - - -rule CreateSVNRevisionFile file -{ - # CreateSVNRevisionFile - - #local svnEntries = entries ; - #SEARCH on $(svnEntries) = [ FDirName $(TOP) .git ] ; - #Depends $(file) : $(svnEntries) ; -} - -actions CreateSVNRevisionFile -{ - (LANG=C svn info $(TOP) 2> /dev/null || echo Revision: 0) | - grep Revision | awk '{printf $2}' > $(1) -} diff --git a/build/jam/OverriddenJamRules b/build/jam/OverriddenJamRules deleted file mode 100644 index 7a5acbf..0000000 --- a/build/jam/OverriddenJamRules +++ /dev/null @@ -1,218 +0,0 @@ -# OverriddenJamRules -# -# Jam rules that need to be overridden for good reasons. - -# Overridden to allow for spaces in file names and to support resources. -# Also set the on target LINKFLAGS variable to prevent later changes to -# the global variable from having an effect on the setting for the target. -rule Link -{ - local dbg = [ on $(1) return $(DEBUG) ] ; - if $(STRIP_APPS) && $(STRIP_APPS) != 0 && (!$(dbg) || $(dbg) = 0) { - # strip app if requested so and if not in debug mode! - Strip $(1) ; - } - # Note: RESFILES must be set before invocation. - MODE on $(1) = $(EXEMODE) ; - on $(1) XRes $(1) : $(RESFILES) ; - Chmod $(1) ; - MimeSet $(1) ; - LINKFLAGS on $(1) = [ on $(1) return $(LINKFLAGS) ] ; -} - -actions Link bind NEEDLIBS -{ - $(LINK) $(LINKFLAGS) -o "$(1)" $(UNDEFS) "$(2)" "$(NEEDLIBS)" $(LINKLIBS) -} - - -# Overridden to allow for spaces in file names. -actions Chmod1 -{ - $(CHMOD) "$(MODE)" "$(1)" -} - -# Overridden to allow for spaces in file names. -actions piecemeal together existing Clean -{ - $(RM) -rf "$(>)" -} - -# Changes to rules for sake of discrimination between system and non-system -# headers. - -if $(OSPLAT) = X86 { - if $(IS_GCC4_PLATFORM) = 1 { - HDRS_INCLUDES_SEPARATOR = -iquote- ; - } else { - HDRS_INCLUDES_SEPARATOR = -I- ; - } -} else { - HDRS_INCLUDES_SEPARATOR = -i- ; -} - -rule Cc -{ - Depends $(<) : $(>) ; - - # If the compiler's -o flag doesn't work, relocate the .o - - if $(RELOCATE) - { - CcMv $(<) : $(>) ; - } - - # Just to clarify here: this sets the per-target CCFLAGS to - # be the current value of (global) CCFLAGS and SUBDIRCCFLAGS. - # CCHDRS and CCDEFS must be reformatted each time for some - # compiles (VMS, NT) that malign multiple -D or -I flags. - - CCFLAGS on $(<) += $(CCFLAGS) $(SUBDIRCCFLAGS) $(OPTIM) ; - - CCHDRS on $(<) = [ on $(<) FIncludes $(HDRS) ] - $(HDRS_INCLUDES_SEPARATOR) [ on $(<) FSysIncludes $(SYSHDRS) ] ; - CCDEFS on $(<) = [ on $(<) FDefines $(DEFINES) ] ; -} - -rule C++ -{ - Depends $(<) : $(>) ; - - if $(RELOCATE) - { - CcMv $(<) : $(>) ; - } - - C++FLAGS on $(<) += $(C++FLAGS) $(SUBDIRC++FLAGS) $(OPTIM) ; - - CCHDRS on $(<) = [ on $(<) FIncludes $(HDRS) ] - $(HDRS_INCLUDES_SEPARATOR) [ on $(<) FSysIncludes $(SYSHDRS) ] ; - CCDEFS on $(<) = [ on $(<) FDefines $(DEFINES) ] ; -} - -rule Object -{ - # locate object and search for source, if wanted - - Clean clean : $(<) ; - - MakeLocate $(<) : $(LOCATE_TARGET) ; - SEARCH on $(>) = $(SEARCH_SOURCE) ; - - # Save HDRS for -I$(HDRS) on compile. - # We shouldn't need -I$(SEARCH_SOURCE) as cc can find headers - # in the .c file's directory, but generated .c files (from - # yacc, lex, etc) are located in $(LOCATE_TARGET), possibly - # different from $(SEARCH_SOURCE). - - HDRS on $(<) = $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ; - SYSHDRS on $(<) = $(SUBDIRSYSHDRS) $(SYSHDRS) ; - - # handle #includes for source: Jam scans for headers with - # the regexp pattern $(HDRSCAN) and then invokes $(HDRRULE) - # with the scanned file as the target and the found headers - # as the sources. HDRSEARCH is the value of SEARCH used for - # the found header files. Finally, if jam must deal with - # header files of the same name in different directories, - # they can be distinguished with HDRGRIST. - - # $(SEARCH_SOURCE:E) is where cc first looks for #include - # "foo.h" files. If the source file is in a distant directory, - # look there. Else, look in "" (the current directory). - - HDRRULE on $(>) = HdrRule ; - HDRSCAN on $(>) = $(HDRPATTERN) ; - HDRSEARCH on $(>) = - $(SEARCH_SOURCE:E) $(SUBDIRHDRS) $(HDRS) $(SYSHDRS) $(STDHDRS) ; - - HDRGRIST on $(>) = $(HDRGRIST) ; - - # propagate target specific-defines - - DEFINES on $(<) += $(DEFINES) ; - - # if source is not .c, generate .c with specific rule - - switch $(>:S) - { - case .asm : As $(<) : $(>) ; - case .c : Cc $(<) : $(>) ; - case .C : C++ $(<) : $(>) ; - case .cc : C++ $(<) : $(>) ; - case .cpp : C++ $(<) : $(>) ; - case .f : Fortran $(<) : $(>) ; - case .l : Cc $(<) : $(<:S=.c) ; - LexC++ $(<:S=.c) : $(>) ; - case .s : As $(<) : $(>) ; - case .y : Cc $(<) : $(<:S=.c) ; - Bison $(<:S=.c) : $(>) ; - case * : UserObject $(<) : $(>) ; - } -} - -rule ObjectHdrs -{ - local s ; - for s in [ FGristFiles $(<:S=$(SUFOBJ)) ] { - HDRS on $(s) += $(>) ; - CCHDRS on $(s) = [ on $(s) FIncludes $(HDRS) ] - $(HDRS_INCLUDES_SEPARATOR) [ on $(s) FSysIncludes $(SYSHDRS) ] ; - } -} - -# Override Jam 2.5rc3 MakeLocate and MkDir to deal more intelligently -# with grist set on the supplied directory name. -rule MakeLocate -{ - if $(2[1]) - { - local dir = $(2[1]) ; - if ! $(dir:G) { - dir = $(dir:G=dir) ; - } - LOCATE on $(1) = $(dir:G=) ; - Depends $(1) : $(dir) ; - MkDir $(dir) ; - } -} - -rule MkDir -{ - # If dir exists, don't update it - # Do this even for $(DOT). - - local dir = $(<) ; - if ! $(dir:G) { - dir = $(dir:G=dir) ; - } - - NoUpdate $(dir) ; - - if $(dir:G=) != $(DOT) && ! $($(dir:G=)-mkdir) { - local s ; - - # Cheesy gate to prevent multiple invocations on same dir - # MkDir1 has the actions - # Arrange for jam dirs - - $(dir:G=)-mkdir = true ; - MkDir1 $(dir) ; - Depends dirs : $(dir) ; - - # Recursively make parent directories. - # $(dir:P) = $(dir)'s parent, & we recurse until root - - s = $(dir:P) ; # parent keeps grist - - if $(s:G=) && $(s) != $(dir) { - Depends $(dir) : $(s) ; - MkDir $(s) ; - } else if $(s) { - NotFile $(s) ; - } - } -} - -# Add SUBDIRSYSHDRS to the variables that shall be reset automatically by the -# SubDir rule. -SUBDIRRESET += SYSHDRS ; diff --git a/build/jam/PackageRules b/build/jam/PackageRules deleted file mode 100644 index 7bf932c..0000000 --- a/build/jam/PackageRules +++ /dev/null @@ -1,247 +0,0 @@ -# PackageRules -# -# Rules to create archives for binary distribution - -rule Copy -{ - if $(2) { - SEARCH on $(2) += $(SEARCH_SOURCE) ; - Depends $(1) : $(COPYATTR) $(2) ; - Copy1 $(1) : $(COPYATTR) $(2) ; - } -} - -actions Copy1 -{ - "$(2[1])" -d "$(2[2-])" "$(1)" -} - -rule Packages -{ - local packagenames = $(1) ; - local packagefiles = $(2) ; - local path = $(3) ; - for name in $(packagenames) { - Package $(name) : $(packagefiles) : $(path) ; - } -} - -rule FPackageConfigSubPath -{ - # FPackageConfigSubPath - # - local packagename = $(1) ; - - local configSubPath ; - on $(packagename) { - configSubPath = $(OS:L) $(OSPLAT:L) ; - - if $(DEBUG) = 0 { - configSubPath += release ; - } else { - configSubPath += debug_$(DEBUG) ; - } - } - - return $(configSubPath) ; -} - -rule Package -{ - local packagename = $(1) ; - local packagefiles = $(2) ; - local path = $(3) ; - - local configSubPath = [ FPackageConfigSubPath $(packagename) ] ; - #local packagezip = $(packagename:S=.zip:G=_packages) ; - local packagezip = $(packagename:S=-$(VERSION).zip:G=_packages) ; - local targetDir = [ FDirName $(PACKAGE_DIR) $(configSubPath) ] ; - local packagedir = [ FDirName $(targetDir) $(packagename) ] ; - - local installscript = install.sh ; - local packageinstallscript = $(installscript:G=_packages!$(packagename)) ; - local installzip = install.zip ; - local packageinstallzip = $(installzip:G=_packages!$(packagename)) ; - - local packageobjectdir = [ FDirName $(PACKAGE_OBJECT_DIR) - $(configSubPath) $(packagename) ] ; - local packagefiledir = [ FDirName $(packageobjectdir) $(path) ] ; - local packagefileinstallzip - = $(installzip:G=_package_objects!$(packagename)) ; - - # add the files to the install.zip - local packagefilegrist = [ FGrist _package_files $(packagename) $(path) ] ; - for file in $(packagefiles) { - if $(path[0]) = "boot" { - local packagefile = $(file:G=$(packagefilegrist)) ; - MakeLocate $(packagefile) : $(packagefiledir) ; - Copy $(packagefile) : $(file) ; - Clean cleanPackages : $(packagefile) ; - PackageInstallZip $(packagefileinstallzip) : $(packagefile) ; - } else { - local packagefile = $(file:G=_packages!$(packagename)) ; - MakeLocate $(packagefile) : $(packagedir) ; - Copy $(packagefile) : [ FGristFiles $(file) ] ; - Clean cleanPackages : $(packagefile) ; - Depends $(packagezip) : $(packagefile) ; - } - } - - # general setup for this package -- only on first invocation - if ! $(_setup_$(packagename)) { - _setup_$(packagename) = true ; - - NotFile $(packagename) ; - LocalDepends packages : $(packagename) ; - - MakeLocate $(packagezip) : $(targetDir) ; - MakeLocate $(packageinstallscript) : $(packagedir) ; - MakeLocate $(packageinstallzip) : $(packagedir) ; - MakeLocate $(packagefileinstallzip) : $(packageobjectdir) ; - - PackageInstallScript $(packageinstallscript) : $(packagedir) ; - LinkInstallZip $(packageinstallzip) : $(packagefileinstallzip) ; - Depends $(packagename) : $(packagezip) ; - PackageZip $(packagezip) : $(packagedir) - : $(packageinstallscript) $(packageinstallzip) ; - } - -} - -rule PackageSymLink -{ - # PackageSymLink : - # : - # - local packagename = $(1) ; - local symlinkPath = $(2) ; - local symlinkTarget = $(3) ; - - local configSubPath = [ FPackageConfigSubPath $(packagename) ] ; - - local symlinkDir = [ FReverse $(symlinkPath) ] ; - local symlink = $(symlinkDir[1]) ; - symlinkDir = [ FReverse $(symlinkDir[2-]) ] ; - local symlinkGrist = [ FGrist _package $(packagename) $(symlinkDir) ] ; - symlink = $(symlink:G=$(symlinkGrist)) ; - - if $(symlinkDir[1]) = boot { - local installzip = install.zip ; - local packagefileinstallzip - = $(installzip:G=_package_objects!$(packagename)) ; - - local packageobjectdir = [ FDirName $(PACKAGE_OBJECT_DIR) - $(configSubPath) $(packagename) ] ; - symlinkDir = [ FDirName $(packageobjectdir) $(symlinkDir) ] ; - - PackageInstallZip $(packagefileinstallzip) : $(symlink) ; - - } else { - #local packagezip = $(packagename:S=.zip:G=_packages) ; - local packagezip = $(packagename:S=-$(VERSION).zip:G=_packages) ; - - local packagedir = [ FDirName $(PACKAGE_DIR) $(configSubPath) - $(packagename) ] ; - symlinkDir = [ FDirName $(packagedir) $(symlinkDir) ] ; - - Depends $(packagezip) : $(symlink) ; - } - - MakeLocate $(symlink) : $(symlinkDir) ; - SymLink $(symlink) : $(symlinkTarget) : false ; - Clean cleanPackages : $(symlink) ; -} - -rule PackageDriverSymLink -{ - # PackageDriverSymLink : ; - # : Package name. - # : Path components relative to the - # /boot/home/config/add-ons/kernel/drivers/dev directory, e.g. - # "graphics mga.driver" (no quotation, of course). - # - local packageName = $(1) ; - local symlinkComponents = $(2) ; - - # construct the symlink contents - local symlinkPath = [ FReverse $(symlinkComponents) ] ; - symlinkPath = bin $(symlinkPath[1]) ; - - for i in $(symlinkComponents) { - symlinkPath = $(DOTDOT) $(symlinkPath) ; - } - - PackageSymLink $(packageName) - : boot home config add-ons kernel drivers dev $(symlinkComponents) - : [ FDirName $(symlinkPath) ] ; -} - -rule PackageZip -{ - local dir = $(2:G=dir) ; - Depends $(1) : $(dir) $(3) ; - Clean cleanPackages : $(1) ; - PackageZip1 $(1) : $(dir) ; -} - -actions together PackageZip1 { - cd "$(2:P)" ; - zip -rq "$(1:BS)" "$(2:BS)" ; -} - -rule PackageInstallScript -{ - MakeLocate $(1) : $(2) ; - Clean cleanPackages : $(1) ; - PackageInstallScript1 $(1) : $(2:G=dir) ; -} - -actions together PackageInstallScript1 -{ -echo '#!/bin/sh -base=`dirname "$0"` -cd "$base" -if [ -n "$TTY" ] -then - unzip -d / install.zip -else - response=`alert "Would you like to automatically overwrite existing files, or receive a prompt?" "Overwrite" "Prompt"` - if [ $response == "Overwrite" ] - then - unzip -od / install.zip - alert "Finished installing" "Thanks" - else - if [ -e /boot/beos/apps/Terminal ] - then - terminal=/boot/beos/apps/Terminal - else - terminal=`query Terminal | head -1` - fi - $terminal -t "installer" /bin/sh "$0" - fi -fi' > "$(1)" ; - chmod 755 "$(1)" ; -} - -rule PackageInstallZip -{ - Depends $(1) : $(2) ; - Clean cleanPackages : $(1) ; -} - -actions together PackageInstallZip -{ - cd "$(1:P)" ; - zip -rqy "$(1:BS)" boot ; -} - -rule LinkInstallZip -{ - Depends $(1) : $(2) ; - Clean cleanPackages : $(1) ; -} - -actions together LinkInstallZip -{ - ln -sf "`pwd`/$(2)" "$(1)" ; -} diff --git a/build/jam/UserBuildConfig.sample b/build/jam/UserBuildConfig.sample deleted file mode 100644 index 4d9280b..0000000 --- a/build/jam/UserBuildConfig.sample +++ /dev/null @@ -1,63 +0,0 @@ -# UserBuildConfig -# -# Sample of a UserBuildConfig file. It is a central place where the user can -# set variables affecting certain aspects of the build, such as debug, -# warnings and optimization settings. -# -# The following variables can be set: -# -# BUILD_TESTS - If not empty, all tests (TestBeam) will be build, too. -# Default is 0, i.e. no tests. -# CCFLAGS, C++FLAGS - Flags passed to the C/C++ compiler. -# DEBUG - If not empty, will turn on debugging, i.e. will -# add respective C/C++ compiler and linker flags and -# the CPP DEBUG macro. -# DEFINES - CPP macros to be defined, e.g. something like -# `SPECIAL_FEATURE' or `CACHE_SIZE=1024'. -# HDRS - List of directories to be added to the local include -# search paths. -# LINKFLAGS - Flags passed to the linker. -# LOCATE_MAIN_TARGET - Directory where the main targets (i.e. applications, -# libraries shall be placed). Should usually not be -# tampered with by the user. -# OPTIM - Optimization specific flags passed to the C/C++ -# compiler. Usually you want to use OPTIMIZE instead. -# OPTIMIZE - If not set to `0', will turn on optimization, i.e. -# will set the respective C/C++ compiler flags -# (i.e. the OPTIM variable). -# STRIP_APPS - if not set to '0', will cause all generated apps to -# be stripped. Default is '0', i.e. no stripping -# SYSHDRS - List of directories to be added to the system include -# search paths. -# WARNINGS - If not set to `0', will turn on warnings, i.e. will -# set the respective C/C++ compiler flags. - -# Examples: - -# Globally turn off debugging: -# -# DEBUG = 0 ; - -# Globally activate debugging: -# -# DEBUG = 1 ; - -# ... e.g. like this, for the `add-ons/catalogs' directory and all its -# subdirectories. -# -# SetConfigVar WARNINGS : TOP add-ons catalogs : 1 ; - -# Turn on debugging for the the directory `Languages' and all its subdirectories. -# -# SetConfigVar DEBUG : TOP Languages : 1 ; - -# Turn off optimization for the `rez' directory and all its subdirectories. -# -# SetConfigVar OPTIMIZE : TOP rez : 0 ; - -# Define the CPP macro INSANE_DEBUGGING_LEVEL to the value `100' in the -# `lpe' directory, but NOT in its subdirectories (note the use of the -# optional fourth parameter `local', which works for both SetConfigVar and -# AppendToConfigVar). -# -# AppendToConfigVar DEFINES : TOP lpe : INSANE_DEBUGGING_LEVEL=100 : local ; diff --git a/libs/Jamfile b/libs/Jamfile deleted file mode 100644 index 74cf3ee..0000000 --- a/libs/Jamfile +++ /dev/null @@ -1,10 +0,0 @@ -SubDir TOP libs ; - -# Include all the components. -SubInclude TOP libs librunview ; -SubInclude TOP libs libsupport ; -SubInclude TOP libs libinterface ; -SubInclude TOP libs libimcomm ; -SubInclude TOP libs libgloox ; -SubInclude TOP libs libyahoo2 ; - diff --git a/libs/Makefile b/libs/Makefile new file mode 100644 index 0000000..7360df6 --- /dev/null +++ b/libs/Makefile @@ -0,0 +1,14 @@ +.DEFAULT_GOAL := default + +libinterface: + $(MAKE) -f libs/libinterface/Makefile + +librunview: + $(MAKE) -f libs/librunview/Makefile + +libsupport: + $(MAKE) -f libs/libsupport/Makefile + +all: libinterface librunview libsupport + +default: all diff --git a/libs/libgloox/Jamfile b/libs/libgloox/Jamfile deleted file mode 100644 index 5ff6a17..0000000 --- a/libs/libgloox/Jamfile +++ /dev/null @@ -1,112 +0,0 @@ -SubDir TOP libs libgloox ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ; - -SEARCH_SOURCE += [ FDirName $(TOP) libs ] ; - -local sources = - adhoc.cpp - amp.cpp - annotations.cpp - atomicrefcount.cpp - attention.cpp - base64.cpp - bookmarkstorage.cpp - capabilities.cpp - chatstate.cpp - chatstatefilter.cpp - client.cpp - clientbase.cpp - component.cpp - compressiondefault.cpp - compressionzlib.cpp - connectionbosh.cpp - connectionhttpproxy.cpp - connectionsocks5proxy.cpp - connectiontcpbase.cpp - connectiontcpclient.cpp - connectiontcpserver.cpp - connectiontls.cpp - connectiontlsserver.cpp - dataform.cpp - dataformfield.cpp - dataformfieldcontainer.cpp - dataformitem.cpp - dataformreported.cpp - delayeddelivery.cpp - disco.cpp - dns.cpp - error.cpp - eventdispatcher.cpp - featureneg.cpp - flexoff.cpp - gloox.cpp - gpgencrypted.cpp - gpgsigned.cpp - inbandbytestream.cpp - instantmucroom.cpp - iq.cpp - jid.cpp - lastactivity.cpp - logsink.cpp - md5.cpp - message.cpp - messageevent.cpp - messageeventfilter.cpp - messagefilter.cpp - messagesession.cpp - mucmessagesession.cpp - mucroom.cpp - mutex.cpp - nickname.cpp - nonsaslauth.cpp - oob.cpp - parser.cpp - prep.cpp - presence.cpp - privacyitem.cpp - privacymanager.cpp - privatexml.cpp - pubsubevent.cpp - pubsubitem.cpp - pubsubmanager.cpp - receipt.cpp - registration.cpp - rosteritem.cpp - rostermanager.cpp - search.cpp - sha.cpp - shim.cpp - simanager.cpp - siprofileft.cpp - socks5bytestream.cpp - socks5bytestreammanager.cpp - socks5bytestreamserver.cpp - softwareversion.cpp - stanza.cpp - stanzaextensionfactory.cpp - subscription.cpp - tag.cpp - tlsdefault.cpp - tlsgnutlsbase.cpp - tlsgnutlsclient.cpp - tlsgnutlsclientanon.cpp - tlsgnutlsserveranon.cpp - tlsopensslbase.cpp - tlsopensslclient.cpp - tlsopensslserver.cpp - tlsschannel.cpp - uniquemucroom.cpp - util.cpp - vcard.cpp - vcardmanager.cpp - vcardupdate.cpp - xhtmlim.cpp -; - - -StaticLibrary libgloox.a : $(sources) ; - -Depends libssl.so ; diff --git a/libs/libimcomm/Jamfile b/libs/libimcomm/Jamfile deleted file mode 100644 index 6437228..0000000 --- a/libs/libimcomm/Jamfile +++ /dev/null @@ -1,12 +0,0 @@ -SubDir TOP libs libimcomm ; - -StaticLibrary libimcomm.a : - misc.c - packet.c - flap.c - bos_signon.c - imcomm.c - snac.c - md5.c - proxy.c -; diff --git a/libs/libinterface/Jamfile b/libs/libinterface/Jamfile deleted file mode 100644 index 1d8c797..0000000 --- a/libs/libinterface/Jamfile +++ /dev/null @@ -1,14 +0,0 @@ -SubDir TOP libs libinterface ; - -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs private ] ; - -StaticLibrary libinterface.a : - BitmapMenuItem.cpp - BitmapUtils.cpp - BitmapView.cpp - Divider.cpp - NotifyingTextView.cpp - PictureView.cpp - ToolButton.cpp -; diff --git a/libs/libinterface/Makefile b/libs/libinterface/Makefile new file mode 100644 index 0000000..466868a --- /dev/null +++ b/libs/libinterface/Makefile @@ -0,0 +1,142 @@ +# Haiku Generic Makefile v2.6 ## + +## Fill in this file to specify the project being created, and the referenced +## Makefile-Engine will do all of the hard work for you. This handles any +## architecture of Haiku. +## +## For more information, see: +## file:///system/develop/documentation/makefile-engine.html + +# The name of the binary. +NAME = libinterface + +# The type of binary, must be one of: +# APP: Application +# SHARED: Shared library or add-on +# STATIC: Static library archive +# DRIVER: Kernel driver +TYPE = STATIC + +# If you plan to use localization, specify the application's MIME signature. +APP_MIME_SIG = + +# The following lines tell Pe and Eddie where the SRCS, RDEFS, and RSRCS are +# so that Pe and Eddie can fill them in for you. +#%{ +# @src->@ + +# Specify the source files to use. Full paths or paths relative to the +# Makefile can be included. All files, regardless of directory, will have +# their object files created in the common object directory. Note that this +# means this Makefile will not work correctly if two source files with the +# same name (source.c or source.cpp) are included from different directories. +# Also note that spaces in folder names do not work well with this Makefile. +SRCS = \ + libs/libinterface/BitmapMenuItem.cpp \ + libs/libinterface/BitmapUtils.cpp \ + libs/libinterface/BitmapView.cpp \ + libs/libinterface/Divider.cpp \ + libs/libinterface/NotifyingTextView.cpp \ + libs/libinterface/PictureView.cpp \ + libs/libinterface/ToolButton.cpp + +# Specify the resource definition files to use. Full or relative paths can be +# used. +RDEFS = + +# Specify the resource files to use. Full or relative paths can be used. +# Both RDEFS and RSRCS can be utilized in the same Makefile. +RSRCS = + +# End Pe/Eddie support. +# @<-src@ +#%} + +# Specify libraries to link against. +# There are two acceptable forms of library specifications: +# - if your library follows the naming pattern of libXXX.so or libXXX.a, +# you can simply specify XXX for the library. (e.g. the entry for +# "libtracker.so" would be "tracker") +# +# - for GCC-independent linking of standard C++ libraries, you can use +# $(STDCPPLIBS) instead of the raw "stdc++[.r4] [supc++]" library names. +# +# - if your library does not follow the standard library naming scheme, +# you need to specify the path to the library and it's name. +# (e.g. for mylib.a, specify "mylib.a" or "path/mylib.a") +LIBS = be shared $(STDCPPLIBS) + + +# Specify additional paths to directories following the standard libXXX.so +# or libXXX.a naming scheme. You can specify full paths or paths relative +# to the Makefile. The paths included are not parsed recursively, so +# include all of the paths where libraries must be found. Directories where +# source files were specified are automatically included. +LIBPATHS = + +# Additional paths to look for system headers. These use the form +# "#include
". Directories that contain the files in SRCS are +# NOT auto-included here. +SYSTEM_INCLUDE_PATHS = \ + libs/private/ + +# Additional paths paths to look for local headers. These use the form +# #include "header". Directories that contain the files in SRCS are +# automatically included. +LOCAL_INCLUDE_PATHS = + +# Specify the level of optimization that you want. Specify either NONE (O0), +# SOME (O1), FULL (O3), or leave blank (for the default optimization level). +OPTIMIZE := + +# Specify the codes for languages you are going to support in this +# application. The default "en" one must be provided too. "make catkeys" +# will recreate only the "locales/en.catkeys" file. Use it as a template +# for creating catkeys for other languages. All localization files must be +# placed in the "locales" subdirectory. +LOCALES = + +# Specify all the preprocessor symbols to be defined. The symbols will not +# have their values set automatically; you must supply the value (if any) to +# use. For example, setting DEFINES to "DEBUG=1" will cause the compiler +# option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" would pass +# "-DDEBUG" on the compiler's command line. +DEFINES = + +# Specify the warning level. Either NONE (suppress all warnings), +# ALL (enable all warnings), or leave blank (enable default warnings). +WARNINGS = + +# With image symbols, stack crawls in the debugger are meaningful. +# If set to "TRUE", symbols will be created. +SYMBOLS := + +# Includes debug information, which allows the binary to be debugged easily. +# If set to "TRUE", debug info will be created. +DEBUGGER := + +# Specify any additional compiler flags to be used. +COMPILER_FLAGS = + +# Specify any additional linker flags to be used. +LINKER_FLAGS = + +# Specify the version of this binary. Example: +# -app 3 4 0 d 0 -short 340 -long "340 "`echo -n -e '\302\251'`"1999 GNU GPL" +# This may also be specified in a resource. +APP_VERSION := + +# (Only used when "TYPE" is "DRIVER"). Specify the desired driver install +# location in the /dev hierarchy. Example: +# DRIVER_PATH = video/usb +# will instruct the "driverinstall" rule to place a symlink to your driver's +# binary in ~/add-ons/kernel/drivers/dev/video/usb, so that your driver will +# appear at /dev/video/usb when loaded. The default is "misc". +DRIVER_PATH = + +## Include the Makefile-Engine +DEVEL_DIRECTORY := \ + $(shell findpaths -r "makefile_engine" B_FIND_PATH_DEVELOP_DIRECTORY) +include $(DEVEL_DIRECTORY)/etc/makefile-engine + +include Makefile.common diff --git a/libs/libinterface/ToolButton.cpp b/libs/libinterface/ToolButton.cpp index 8d70a77..c02c19f 100644 --- a/libs/libinterface/ToolButton.cpp +++ b/libs/libinterface/ToolButton.cpp @@ -17,10 +17,10 @@ #include -#include - +#include "BitmapUtils.h" #include "ToolButton.h" + const float kPopUpMarkerSize = 5.0f; const float kPopUpMarkerTop = 0.5f; const float kPopUpMarkerRect = (kPopUpMarkerSize * 2) + 2; diff --git a/libs/libmsn/Jamfile b/libs/libmsn/Jamfile deleted file mode 100644 index 02a1dc4..0000000 --- a/libs/libmsn/Jamfile +++ /dev/null @@ -1,38 +0,0 @@ -SubDir TOP libs libmsn ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libmsn ] ; - -SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ; - -SEARCH_SOURCE += [ FDirName $(TOP) libs ] ; -SEARCH_SOURCE += [ FDirName $(TOP) libs libmsn libsiren ] ; - -local sources = - # libmsn - authdata.cpp - buddy.cpp - connection.cpp - md5.cpp - message.cpp - msnobject.cpp -# msntest.cpp - notificationserver.cpp - p2p.cpp - passport.cpp - soap.cpp - switchboardserver.cpp - util.cpp - xmlParser.cpp - - # libsiren - common.cpp - dct4.cpp - decoder.cpp - encoder.cpp - huffman.cpp - rmlt.cpp -; - -StaticLibrary libmsn.a : $(sources) : be root $(TARGET_LIBSTDC++) ssl crypto ; diff --git a/libs/librunview/Jamfile b/libs/librunview/Jamfile deleted file mode 100644 index 99a8848..0000000 --- a/libs/librunview/Jamfile +++ /dev/null @@ -1,23 +0,0 @@ -SubDir TOP libs librunview ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; - -SubDirSysHdrs [ FDirName $(EXPAT_INCLUDE_DIR) ] ; - -SEARCH_SOURCE += [ FDirName $(TOP) libs ] ; - -local sources = - # libjabber - Theme.cpp - RunView.cpp - Utilities.cpp - URLCrunch.cpp - Emoticor.cpp - Emoconfig.cpp -; - -StaticLibrary librunview.a : $(sources) ; - -LINKFLAGS on librunview.a += -L$(EXPAT_LIBRARY_DIR) ; - diff --git a/libs/librunview/Makefile b/libs/librunview/Makefile new file mode 100644 index 0000000..9f06c41 --- /dev/null +++ b/libs/librunview/Makefile @@ -0,0 +1,140 @@ +## Haiku Generic Makefile v2.6 ## + +## Fill in this file to specify the project being created, and the referenced +## Makefile-Engine will do all of the hard work for you. This handles any +## architecture of Haiku. +## +## For more information, see: +## file:///system/develop/documentation/makefile-engine.html + +# The name of the binary. +NAME = librunview + +# The type of binary, must be one of: +# APP: Application +# SHARED: Shared library or add-on +# STATIC: Static library archive +# DRIVER: Kernel driver +TYPE = STATIC + +# If you plan to use localization, specify the application's MIME signature. +APP_MIME_SIG = + +# The following lines tell Pe and Eddie where the SRCS, RDEFS, and RSRCS are +# so that Pe and Eddie can fill them in for you. +#%{ +# @src->@ + +# Specify the source files to use. Full paths or paths relative to the +# Makefile can be included. All files, regardless of directory, will have +# their object files created in the common object directory. Note that this +# means this Makefile will not work correctly if two source files with the +# same name (source.c or source.cpp) are included from different directories. +# Also note that spaces in folder names do not work well with this Makefile. +SRCS = \ + libs/librunview/Theme.cpp \ + libs/librunview/RunView.cpp \ + libs/librunview/Utilities.cpp \ + libs/librunview/URLCrunch.cpp \ + libs/librunview/Emoticor.cpp \ + libs/librunview/Emoconfig.cpp + +# Specify the resource definition files to use. Full or relative paths can be +# used. +RDEFS = + +# Specify the resource files to use. Full or relative paths can be used. +# Both RDEFS and RSRCS can be utilized in the same Makefile. +RSRCS = + +# End Pe/Eddie support. +# @<-src@ +#%} + +# Specify libraries to link against. +# There are two acceptable forms of library specifications: +# - if your library follows the naming pattern of libXXX.so or libXXX.a, +# you can simply specify XXX for the library. (e.g. the entry for +# "libtracker.so" would be "tracker") +# +# - for GCC-independent linking of standard C++ libraries, you can use +# $(STDCPPLIBS) instead of the raw "stdc++[.r4] [supc++]" library names. +# +# - if your library does not follow the standard library naming scheme, +# you need to specify the path to the library and it's name. +# (e.g. for mylib.a, specify "mylib.a" or "path/mylib.a") +LIBS = be expat shared $(STDCPPLIBS) + + +# Specify additional paths to directories following the standard libXXX.so +# or libXXX.a naming scheme. You can specify full paths or paths relative +# to the Makefile. The paths included are not parsed recursively, so +# include all of the paths where libraries must be found. Directories where +# source files were specified are automatically included. +LIBPATHS = + +# Additional paths to look for system headers. These use the form +# "#include
". Directories that contain the files in SRCS are +# NOT auto-included here. +SYSTEM_INCLUDE_PATHS = + +# Additional paths paths to look for local headers. These use the form +# #include "header". Directories that contain the files in SRCS are +# automatically included. +LOCAL_INCLUDE_PATHS = + +# Specify the level of optimization that you want. Specify either NONE (O0), +# SOME (O1), FULL (O3), or leave blank (for the default optimization level). +OPTIMIZE := + +# Specify the codes for languages you are going to support in this +# application. The default "en" one must be provided too. "make catkeys" +# will recreate only the "locales/en.catkeys" file. Use it as a template +# for creating catkeys for other languages. All localization files must be +# placed in the "locales" subdirectory. +LOCALES = + +# Specify all the preprocessor symbols to be defined. The symbols will not +# have their values set automatically; you must supply the value (if any) to +# use. For example, setting DEFINES to "DEBUG=1" will cause the compiler +# option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" would pass +# "-DDEBUG" on the compiler's command line. +DEFINES = + +# Specify the warning level. Either NONE (suppress all warnings), +# ALL (enable all warnings), or leave blank (enable default warnings). +WARNINGS = + +# With image symbols, stack crawls in the debugger are meaningful. +# If set to "TRUE", symbols will be created. +SYMBOLS := + +# Includes debug information, which allows the binary to be debugged easily. +# If set to "TRUE", debug info will be created. +DEBUGGER := + +# Specify any additional compiler flags to be used. +COMPILER_FLAGS = + +# Specify any additional linker flags to be used. +LINKER_FLAGS = + +# Specify the version of this binary. Example: +# -app 3 4 0 d 0 -short 340 -long "340 "`echo -n -e '\302\251'`"1999 GNU GPL" +# This may also be specified in a resource. +APP_VERSION := + +# (Only used when "TYPE" is "DRIVER"). Specify the desired driver install +# location in the /dev hierarchy. Example: +# DRIVER_PATH = video/usb +# will instruct the "driverinstall" rule to place a symlink to your driver's +# binary in ~/add-ons/kernel/drivers/dev/video/usb, so that your driver will +# appear at /dev/video/usb when loaded. The default is "misc". +DRIVER_PATH = + +## Include the Makefile-Engine +DEVEL_DIRECTORY := \ + $(shell findpaths -r "makefile_engine" B_FIND_PATH_DEVELOP_DIRECTORY) +include $(DEVEL_DIRECTORY)/etc/makefile-engine + +include Makefile.common diff --git a/libs/libsupport/Jamfile b/libs/libsupport/Jamfile deleted file mode 100644 index 8c2940e..0000000 --- a/libs/libsupport/Jamfile +++ /dev/null @@ -1,9 +0,0 @@ -SubDir TOP libs libsupport ; - -SubDirSysHdrs [ FDirName $(TOP) libs ] ; - -StaticLibrary libsupport.a : - Base64.cpp - Singleton.cpp - SHA1.cpp -; diff --git a/libs/libsupport/KeyMap.h b/libs/libsupport/KeyMap.h index d63388e..6c837ee 100644 --- a/libs/libsupport/KeyMap.h +++ b/libs/libsupport/KeyMap.h @@ -7,7 +7,7 @@ #include -#include +#include "List.h" template class KeyMap { diff --git a/libs/libsupport/Makefile b/libs/libsupport/Makefile new file mode 100644 index 0000000..df04483 --- /dev/null +++ b/libs/libsupport/Makefile @@ -0,0 +1,137 @@ +## Haiku Generic Makefile v2.6 ## + +## Fill in this file to specify the project being created, and the referenced +## Makefile-Engine will do all of the hard work for you. This handles any +## architecture of Haiku. +## +## For more information, see: +## file:///system/develop/documentation/makefile-engine.html + +# The name of the binary. +NAME = libsupport + +# The type of binary, must be one of: +# APP: Application +# SHARED: Shared library or add-on +# STATIC: Static library archive +# DRIVER: Kernel driver +TYPE = STATIC + +# If you plan to use localization, specify the application's MIME signature. +APP_MIME_SIG = + +# The following lines tell Pe and Eddie where the SRCS, RDEFS, and RSRCS are +# so that Pe and Eddie can fill them in for you. +#%{ +# @src->@ + +# Specify the source files to use. Full paths or paths relative to the +# Makefile can be included. All files, regardless of directory, will have +# their object files created in the common object directory. Note that this +# means this Makefile will not work correctly if two source files with the +# same name (source.c or source.cpp) are included from different directories. +# Also note that spaces in folder names do not work well with this Makefile. +SRCS = \ + libs/libsupport/Base64.cpp \ + libs/libsupport/SHA1.cpp \ + libs/libsupport/Singleton.cpp + +# Specify the resource definition files to use. Full or relative paths can be +# used. +RDEFS = + +# Specify the resource files to use. Full or relative paths can be used. +# Both RDEFS and RSRCS can be utilized in the same Makefile. +RSRCS = + +# End Pe/Eddie support. +# @<-src@ +#%} + +# Specify libraries to link against. +# There are two acceptable forms of library specifications: +# - if your library follows the naming pattern of libXXX.so or libXXX.a, +# you can simply specify XXX for the library. (e.g. the entry for +# "libtracker.so" would be "tracker") +# +# - for GCC-independent linking of standard C++ libraries, you can use +# $(STDCPPLIBS) instead of the raw "stdc++[.r4] [supc++]" library names. +# +# - if your library does not follow the standard library naming scheme, +# you need to specify the path to the library and it's name. +# (e.g. for mylib.a, specify "mylib.a" or "path/mylib.a") +LIBS = be shared $(STDCPPLIBS) + + +# Specify additional paths to directories following the standard libXXX.so +# or libXXX.a naming scheme. You can specify full paths or paths relative +# to the Makefile. The paths included are not parsed recursively, so +# include all of the paths where libraries must be found. Directories where +# source files were specified are automatically included. +LIBPATHS = + +# Additional paths to look for system headers. These use the form +# "#include
". Directories that contain the files in SRCS are +# NOT auto-included here. +SYSTEM_INCLUDE_PATHS = + +# Additional paths paths to look for local headers. These use the form +# #include "header". Directories that contain the files in SRCS are +# automatically included. +LOCAL_INCLUDE_PATHS = + +# Specify the level of optimization that you want. Specify either NONE (O0), +# SOME (O1), FULL (O3), or leave blank (for the default optimization level). +OPTIMIZE := + +# Specify the codes for languages you are going to support in this +# application. The default "en" one must be provided too. "make catkeys" +# will recreate only the "locales/en.catkeys" file. Use it as a template +# for creating catkeys for other languages. All localization files must be +# placed in the "locales" subdirectory. +LOCALES = + +# Specify all the preprocessor symbols to be defined. The symbols will not +# have their values set automatically; you must supply the value (if any) to +# use. For example, setting DEFINES to "DEBUG=1" will cause the compiler +# option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" would pass +# "-DDEBUG" on the compiler's command line. +DEFINES = + +# Specify the warning level. Either NONE (suppress all warnings), +# ALL (enable all warnings), or leave blank (enable default warnings). +WARNINGS = + +# With image symbols, stack crawls in the debugger are meaningful. +# If set to "TRUE", symbols will be created. +SYMBOLS := + +# Includes debug information, which allows the binary to be debugged easily. +# If set to "TRUE", debug info will be created. +DEBUGGER := + +# Specify any additional compiler flags to be used. +COMPILER_FLAGS = + +# Specify any additional linker flags to be used. +LINKER_FLAGS = + +# Specify the version of this binary. Example: +# -app 3 4 0 d 0 -short 340 -long "340 "`echo -n -e '\302\251'`"1999 GNU GPL" +# This may also be specified in a resource. +APP_VERSION := + +# (Only used when "TYPE" is "DRIVER"). Specify the desired driver install +# location in the /dev hierarchy. Example: +# DRIVER_PATH = video/usb +# will instruct the "driverinstall" rule to place a symlink to your driver's +# binary in ~/add-ons/kernel/drivers/dev/video/usb, so that your driver will +# appear at /dev/video/usb when loaded. The default is "misc". +DRIVER_PATH = + +## Include the Makefile-Engine +DEVEL_DIRECTORY := \ + $(shell findpaths -r "makefile_engine" B_FIND_PATH_DEVELOP_DIRECTORY) +include $(DEVEL_DIRECTORY)/etc/makefile-engine + +include Makefile.common diff --git a/libs/libyahoo2/Jamfile b/libs/libyahoo2/Jamfile deleted file mode 100644 index 4b8e4c6..0000000 --- a/libs/libyahoo2/Jamfile +++ /dev/null @@ -1,24 +0,0 @@ -SubDir TOP libs libyahoo2 ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libyahoo2 ] ; - -SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ; - -SEARCH_SOURCE += [ FDirName $(TOP) libs ] ; - -local sources = - # libyahoo - autoresponder.c - libyahoo2.c - yahoo_fn.c - yahoo_list.c - crypt.c - md5.c - sha1.c - yahoo_httplib.c - yahoo_util.c -; - -StaticLibrary libyahoo2.a : $(sources) : be network ; diff --git a/protocols/Jamfile b/protocols/Jamfile deleted file mode 100644 index b98cef2..0000000 --- a/protocols/Jamfile +++ /dev/null @@ -1,8 +0,0 @@ -SubDir TOP protocols ; - -CAYA_INCLUDE_DIR = $(TOP) application ; - -# Include all the components. -SubInclude TOP protocols aim ; -SubInclude TOP protocols xmpp ; -SubInclude TOP protocols yahoo ; diff --git a/protocols/Makefile b/protocols/Makefile new file mode 100644 index 0000000..db3d36e --- /dev/null +++ b/protocols/Makefile @@ -0,0 +1,8 @@ +.DEFAULT_GOAL := default + +xmpp: + $(MAKE) -f protocols/xmpp/Makefile + +all: xmpp + +default: all diff --git a/protocols/Makefile.common b/protocols/Makefile.common new file mode 100644 index 0000000..7a0c0dc --- /dev/null +++ b/protocols/Makefile.common @@ -0,0 +1,2 @@ +$(shell mkdir $(PROTOCOL_DIR) >/dev/null 2>&1) + diff --git a/protocols/aim/Jamfile b/protocols/aim/Jamfile deleted file mode 100644 index 0091d67..0000000 --- a/protocols/aim/Jamfile +++ /dev/null @@ -1,19 +0,0 @@ -SubDir TOP protocols aim ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) application ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libimcomm ] ; - -SEARCH_SOURCE += [ FDirName $(TOP) protocols aim ] ; - -AddOn aim : - AIM.cpp - main.cpp - : libimcomm.a be network $(TARGET_LIBSTDC++) - : aim.rdef settings_template.rdef -; - -Depends aim : libimcomm.a ; - -InstallBin $(CAYA_DIRECTORY)/protocols : aim ; diff --git a/protocols/msn/Jamfile b/protocols/msn/Jamfile deleted file mode 100644 index dd4e840..0000000 --- a/protocols/msn/Jamfile +++ /dev/null @@ -1,21 +0,0 @@ -SubDir TOP protocols msn ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libmsn ] ; -SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ; -SubDirSysHdrs [ FDirName $(CAYA_INCLUDE_DIR) ] ; - -AddOn msn : - main.cpp - MSN.cpp - MSNContainer.cpp - : be root $(TARGET_LIBSTDC++) ssl crypto network bnetapi libmsn.a - : msn.rdef SettingsTemplate.rdef -; - -Depends msn : libmsn.a ; - -LINKFLAGS on msn += -L$(OPENSSL_LIBRARY_DIR) ; - -InstallBin $(CAYA_DIRECTORY)/protocols : msn ; diff --git a/protocols/xmpp/JabberHandler.cpp b/protocols/xmpp/JabberHandler.cpp index d56aba6..6dd8d35 100644 --- a/protocols/xmpp/JabberHandler.cpp +++ b/protocols/xmpp/JabberHandler.cpp @@ -16,8 +16,8 @@ #include -#include -#include +#include +#include #include "JabberHandler.h" diff --git a/protocols/xmpp/JabberHandler.h b/protocols/xmpp/JabberHandler.h index a7d0266..d354c06 100644 --- a/protocols/xmpp/JabberHandler.h +++ b/protocols/xmpp/JabberHandler.h @@ -9,23 +9,23 @@ #include #include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include #include #include diff --git a/protocols/xmpp/Jamfile b/protocols/xmpp/Jamfile deleted file mode 100644 index 3848ff7..0000000 --- a/protocols/xmpp/Jamfile +++ /dev/null @@ -1,46 +0,0 @@ -SubDir TOP protocols xmpp ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libgloox ] ; -SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ; -SubDirSysHdrs [ FDirName $(CAYA_INCLUDE_DIR) ] ; - -AddOn jabber : - JabberMain.cpp - JabberProtocol.cpp - JabberHandler.cpp - : be libsupport.a libgloox.a network ssl crypto z $(TARGET_LIBSTDC++) - : jabber.rdef jabber_settings.rdef -; - -AddOn gtalk : - GoogleTalkMain.cpp - GoogleTalkProtocol.cpp - JabberHandler.cpp - : be libsupport.a libgloox.a network ssl crypto z $(TARGET_LIBSTDC++) - : gtalk.rdef gtalk_settings.rdef -; - -AddOn facebook : - FacebookMain.cpp - FacebookProtocol.cpp - JabberHandler.cpp - : be libsupport.a libgloox.a network ssl crypto z $(TARGET_LIBSTDC++) - : facebook.rdef facebook_settings.rdef -; - -Depends jabber : libsupport.a ; -Depends jabber : libgloox.a ; -Depends gtalk : libsupport.a ; -Depends gtalk : libgloox.a ; -Depends facebook : libsupport.a ; -Depends facebook : libgloox.a ; - -LINKFLAGS on jabber += -L$(OPENSSL_LIBRARY_DIR) ; -LINKFLAGS on gtalk += -L$(OPENSSL_LIBRARY_DIR) ; -LINKFLAGS on facebook += -L$(OPENSSL_LIBRARY_DIR) ; - -InstallBin $(CAYA_DIRECTORY)/protocols : jabber ; -InstallBin $(CAYA_DIRECTORY)/protocols : gtalk ; -InstallBin $(CAYA_DIRECTORY)/protocols : facebook ; diff --git a/protocols/xmpp/Makefile b/protocols/xmpp/Makefile new file mode 100644 index 0000000..c076602 --- /dev/null +++ b/protocols/xmpp/Makefile @@ -0,0 +1,140 @@ +## Haiku Generic Makefile v2.6 ## + +## Fill in this file to specify the project being created, and the referenced +## Makefile-Engine will do all of the hard work for you. This handles any +## architecture of Haiku. +## +## For more information, see: +## file:///system/develop/documentation/makefile-engine.html + +# The name of the binary. +NAME = protocols/jabber + +# The type of binary, must be one of: +# APP: Application +# SHARED: Shared library or add-on +# STATIC: Static library archive +# DRIVER: Kernel driver +TYPE = SHARED + +# If you plan to use localization, specify the application's MIME signature. +APP_MIME_SIG = + +# The following lines tell Pe and Eddie where the SRCS, RDEFS, and RSRCS are +# so that Pe and Eddie can fill them in for you. +#%{ +# @src->@ + +# Specify the source files to use. Full paths or paths relative to the +# Makefile can be included. All files, regardless of directory, will have +# their object files created in the common object directory. Note that this +# means this Makefile will not work correctly if two source files with the +# same name (source.c or source.cpp) are included from different directories. +# Also note that spaces in folder names do not work well with this Makefile. +SRCS = \ + protocols/xmpp/JabberMain.cpp \ + protocols/xmpp/JabberProtocol.cpp \ + protocols/xmpp/JabberHandler.cpp + + +# Specify the resource definition files to use. Full or relative paths can be +# used. +RDEFS = \ + protocols/xmpp/jabber.rdef \ + protoocls/xmpp/jabber_settings.rdef + +# Specify the resource files to use. Full or relative paths can be used. +# Both RDEFS and RSRCS can be utilized in the same Makefile. +RSRCS = + +# End Pe/Eddie support. +# @<-src@ +#%} + +# Specify libraries to link against. +# There are two acceptable forms of library specifications: +# - if your library follows the naming pattern of libXXX.so or libXXX.a, +# you can simply specify XXX for the library. (e.g. the entry for +# "libtracker.so" would be "tracker") +# +# - for GCC-independent linking of standard C++ libraries, you can use +# $(STDCPPLIBS) instead of the raw "stdc++[.r4] [supc++]" library names. +# +# - if your library does not follow the standard library naming scheme, +# you need to specify the path to the library and it's name. +# (e.g. for mylib.a, specify "mylib.a" or "path/mylib.a") +LIBS = be crypto network support ssl gloox z $(STDCPPLIBS) + + +# Specify additional paths to directories following the standard libXXX.so +# or libXXX.a naming scheme. You can specify full paths or paths relative +# to the Makefile. The paths included are not parsed recursively, so +# include all of the paths where libraries must be found. Directories where +# source files were specified are automatically included. +LIBPATHS = + +# Additional paths to look for system headers. These use the form +# "#include
". Directories that contain the files in SRCS are +# NOT auto-included here. +SYSTEM_INCLUDE_PATHS = application/ libs/ + +# Additional paths paths to look for local headers. These use the form +# #include "header". Directories that contain the files in SRCS are +# automatically included. +LOCAL_INCLUDE_PATHS = + +# Specify the level of optimization that you want. Specify either NONE (O0), +# SOME (O1), FULL (O3), or leave blank (for the default optimization level). +OPTIMIZE := + +# Specify the codes for languages you are going to support in this +# application. The default "en" one must be provided too. "make catkeys" +# will recreate only the "locales/en.catkeys" file. Use it as a template +# for creating catkeys for other languages. All localization files must be +# placed in the "locales" subdirectory. +LOCALES = + +# Specify all the preprocessor symbols to be defined. The symbols will not +# have their values set automatically; you must supply the value (if any) to +# use. For example, setting DEFINES to "DEBUG=1" will cause the compiler +# option "-DDEBUG=1" to be used. Setting DEFINES to "DEBUG" would pass +# "-DDEBUG" on the compiler's command line. +DEFINES = + +# Specify the warning level. Either NONE (suppress all warnings), +# ALL (enable all warnings), or leave blank (enable default warnings). +WARNINGS = + +# With image symbols, stack crawls in the debugger are meaningful. +# If set to "TRUE", symbols will be created. +SYMBOLS := + +# Includes debug information, which allows the binary to be debugged easily. +# If set to "TRUE", debug info will be created. +DEBUGGER := + +# Specify any additional compiler flags to be used. +COMPILER_FLAGS = + +# Specify any additional linker flags to be used. +LINKER_FLAGS = + +# Specify the version of this binary. Example: +# -app 3 4 0 d 0 -short 340 -long "340 "`echo -n -e '\302\251'`"1999 GNU GPL" +# This may also be specified in a resource. +APP_VERSION := + +# (Only used when "TYPE" is "DRIVER"). Specify the desired driver install +# location in the /dev hierarchy. Example: +# DRIVER_PATH = video/usb +# will instruct the "driverinstall" rule to place a symlink to your driver's +# binary in ~/add-ons/kernel/drivers/dev/video/usb, so that your driver will +# appear at /dev/video/usb when loaded. The default is "misc". +DRIVER_PATH = + +## Include the Makefile-Engine +DEVEL_DIRECTORY := /boot/system/develop/ +include $(DEVEL_DIRECTORY)/etc/makefile-engine + +include Makefile.common +include protocols/Makefile.common diff --git a/protocols/yahoo/Jamfile b/protocols/yahoo/Jamfile deleted file mode 100644 index 038e0fa..0000000 --- a/protocols/yahoo/Jamfile +++ /dev/null @@ -1,21 +0,0 @@ -SubDir TOP protocols yahoo ; - -SubDirSysHdrs [ FDirName $(TOP) ] ; -SubDirSysHdrs [ FDirName $(TOP) libs ] ; -SubDirSysHdrs [ FDirName $(TOP) libs libyahoo2 ] ; -SubDirSysHdrs [ FDirName $(OPENSSL_INCLUDE_DIR) ] ; -SubDirSysHdrs [ FDirName $(CAYA_INCLUDE_DIR) ] ; - -AddOn yahoo : - Yahoo.cpp - YahooCallbacks.cpp - YahooConnection.cpp - : be $(TARGET_LIBSTDC++) ssl crypto libyahoo2.a network - : Yahoo.rdef ProtocolTemplate.rdef -; - -Depends yahoo : libyahoo2.a ; - -LINKFLAGS on yahoo += -L$(OPENSSL_LIBRARY_DIR) ; - -InstallBin $(CAYA_DIRECTORY)/protocols : yahoo ;