1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-22 11:17:58 +01:00

Windows binaries and stuff.

This commit is contained in:
Kris Maglione
2011-09-24 14:34:54 -04:00
parent 0aa21f15c1
commit ef965d7681
8 changed files with 31 additions and 17 deletions

View File

@@ -11,4 +11,9 @@ binary-component components/7.0-Darwin_x86_64-gcc3/dactyl.so abi=Darwin_x86_64-g
binary-component components/8.0-Darwin_x86_64-gcc3/dactyl.so abi=Darwin_x86_64-gcc3 platformversion>=8.0 platformversion<8.* binary-component components/8.0-Darwin_x86_64-gcc3/dactyl.so abi=Darwin_x86_64-gcc3 platformversion>=8.0 platformversion<8.*
binary-component components/9.0-Darwin_x86_64-gcc3/dactyl.so abi=Darwin_x86_64-gcc3 platformversion>=9.0 platformversion<9.* binary-component components/9.0-Darwin_x86_64-gcc3/dactyl.so abi=Darwin_x86_64-gcc3 platformversion>=9.0 platformversion<9.*
binary-component components/6.0-WINNT_x86-msvc/dactyl.dll abi=WINNT_x86-msvc appversion>=6.0 appversion<6.*
binary-component components/7.0-WINNT_x86-msvc/dactyl.dll abi=WINNT_x86-msvc appversion>=7.0 appversion<7.*
binary-component components/8.0-WINNT_x86-msvc/dactyl.dll abi=WINNT_x86-msvc platformversion>=8.0 platformversion<8.*
binary-component components/9.0-WINNT_x86-msvc/dactyl.dll abi=WINNT_x86-msvc platformversion>=9.0 platformversion<9.*
# vim:se tw=0 ft=cfg: # vim:se tw=0 ft=cfg:

View File

@@ -12,15 +12,17 @@ SED := $(shell if [ "xoo" = x$$(echo foo | sed -E 's/f(o)/\1/' 2>/dev/null) ]; \
fi) fi)
GECKO_SDK_PATH := $(shell pkg-config --libs libxul | $(SED) 's,([^-]|-[^L])*-L([^ ]+)/lib.*,\2,') PKGCONFIG ?= pkg-config
GECKO_SDK_PATH := $(shell $(PKGCONFIG) --libs libxul | $(SED) 's,([^-]|-[^L])*-L([^ ]+)/lib.*,\2,')
CXX ?= c++ CXX ?= c++ -o
LINK ?= c++
MKDEP ?= $(CXX) -M MKDEP ?= $(CXX) -M
PYTHON ?= python2 PYTHON ?= python2
CPPFLAGS += -fno-rtti \ EXCPPFLAGS = -fno-rtti \
-fno-exceptions \ -fno-exceptions \
-fshort-wchar \ -fshort-wchar \
-fPIC \ -fPIC \

View File

@@ -6,7 +6,8 @@
em:type="2" em:type="2"
em:name="Dactyl Binary Utils" em:name="Dactyl Binary Utils"
em:version="0.1" em:version="0.1"
em:description="Binary utilities for dactyl add-ons"> em:description="Binary utilities for dactyl add-ons"
em:unpack="true">
<em:targetApplication> <em:targetApplication>
<Description <Description

View File

@@ -17,8 +17,6 @@ CPPSRCS = \
subscriptLoader.cpp \ subscriptLoader.cpp \
$(NULL) $(NULL)
GECKO_CONFIG_INCLUDE = -include mozilla-config.h
GECKO_DEFINES = -DMOZILLA_STRICT_API GECKO_DEFINES = -DMOZILLA_STRICT_API
GECKO_INCLUDES = -I$(ABI)/ \ GECKO_INCLUDES = -I$(ABI)/ \
@@ -41,6 +39,8 @@ endif
include $(ROOT)/config.mk include $(ROOT)/config.mk
sinclude $(ROOT)/config.local.mk sinclude $(ROOT)/config.local.mk
CPPFLAGS += $(EXCPPFLAGS)
XPTS = $(XPIDLSRCS:%.idl=$(XPTDIR)%.xpt) XPTS = $(XPIDLSRCS:%.idl=$(XPTDIR)%.xpt)
OBJS = $(CPPSRCS:%.cpp=$(OBJDIR)%.o) OBJS = $(CPPSRCS:%.cpp=$(OBJDIR)%.o)
HEADERS = $(XPIDLSRCS:%.idl=$(ABI)/%.h) HEADERS = $(XPIDLSRCS:%.idl=$(ABI)/%.h)
@@ -72,20 +72,20 @@ $(ABI)/%.h: %.idl
$(XPTDIR)%.xpt: %.idl $(XPTDIR)%.xpt: %.idl
$(IDL_XPT) $@ $(GECKO_INCLUDES) $< $(IDL_XPT) $@ $(GECKO_INCLUDES) $<
_CPPFLAGS = $(CPPFLAGS) $(CXXFLAGS) $(GECKO_CONFIG_INCLUDE) $(GECKO_DEFINES) $(GECKO_INCLUDES) $(DEFINES) _CPPFLAGS = $(CPPFLAGS) $(CXXFLAGS) $(GECKO_DEFINES) $(GECKO_INCLUDES) $(DEFINES)
$(OBJDIR)%.o: %.cpp Makefile $(OBJDIR)%.o: %.cpp Makefile
$(CXX) -o $@ -c $(_CPPFLAGS) $< $(CXX)$@ -c $(_CPPFLAGS) $<
.depend: $(CPPSRCS) Makefile .depend: $(CPPSRCS) Makefile
$(MKDEP) $(_CPPFLAGS) $(CPPSRCS) | $(SED) 's;^[^ ];$(OBJDIR)&;' >.depend $(MKDEP) $(_CPPFLAGS) $(CPPSRCS) | $(SED) 's;^[^ ];$(OBJDIR)&;' >.depend
$(MODULE).so: $(OBJS) $(MODULE).so: $(OBJS)
$(CXX) -o $@ $(OBJS) $(LDFLAGS) $(GECKO_LDFLAGS) $(LINK) -o $@ $(OBJS) $(LDFLAGS) $(GECKO_LDFLAGS)
chmod +x $@ chmod +x $@
$(MODULE).dll: $(OBJS) $(MODULE).dll: $(OBJS)
$(CXX) -o $@ $(OBJS) $(GECKO_LDFLAGS) $(LINK)$@ $(GECKO_LDFLAGS) $(OBJS)
$(XPTDIR) $(SODIR) $(OBJDIR): $(XPTDIR) $(SODIR) $(OBJDIR):
mkdir -p $@ mkdir -p $@

2
binary/src/config.h Normal file
View File

@@ -0,0 +1,2 @@
#pragma once
#include "mozilla-config.h"

View File

@@ -168,6 +168,7 @@ dactylUtils::CreateGlobal(JSContext *cx, jsval *out)
NS_ERROR_FAILURE); NS_ERROR_FAILURE);
*out = OBJECT_TO_JSVAL(global); *out = OBJECT_TO_JSVAL(global);
return NS_OK;
} }
NS_IMETHODIMP NS_IMETHODIMP
@@ -281,7 +282,9 @@ dactylUtils::GetGlobalForObject(const jsval &aObject,
NS_ERROR_XPC_BAD_CONVERT_JS); NS_ERROR_XPC_BAD_CONVERT_JS);
JSObject *obj = JSVAL_TO_OBJECT(aObject); JSObject *obj = JSVAL_TO_OBJECT(aObject);
#ifndef WIN32 /* Why? No idea. */
if (obj->isProxy()) if (obj->isProxy())
#endif
obj = obj->unwrap(); obj = obj->unwrap();
JSObject *global = JS_GetGlobalForObject(cx, obj); JSObject *global = JS_GetGlobalForObject(cx, obj);

View File

@@ -1,6 +1,7 @@
#pragma once #pragma once
#include "config.h"
#include "dactylIUtils.h" #include "dactylIUtils.h"
#include "nsISupports.h" #include "nsISupports.h"

View File

@@ -40,9 +40,7 @@
#ifndef mozJSLoaderUtils_h #ifndef mozJSLoaderUtils_h
#define mozJSLoaderUtils_h #define mozJSLoaderUtils_h
#include "config.h"
#if defined(GECKO_MAJOR) && GECKO_MAJOR < 9
#endif
/* /*
* This is evil. Very evil. * This is evil. Very evil.
@@ -59,12 +57,14 @@
# define JS_XDRScript JS_XDRScriptObject # define JS_XDRScript JS_XDRScriptObject
typedef JSObject JSScriptType; typedef JSObject JSScriptType;
# if GECKO_MAJOR < 8
# define NewObjectInputStreamFromBuffer NS_NewObjectInputStreamFromBuffer # define NewObjectInputStreamFromBuffer NS_NewObjectInputStreamFromBuffer
# define NewBufferFromStorageStream NS_NewBufferFromStorageStream # define NewBufferFromStorageStream NS_NewBufferFromStorageStream
# if GECKO_MAJOR > 6 # if GECKO_MAJOR > 6
# define NewObjectOutputWrappedStorageStream NS_NewObjectOutputWrappedStorageStream # define NewObjectOutputWrappedStorageStream NS_NewObjectOutputWrappedStorageStream
# else # else
# define NewObjectOutputWrappedStorageStream(a, b, c) NS_NewObjectOutputWrappedStorageStream((a), (b)) # define NewObjectOutputWrappedStorageStream(a, b, c) NS_NewObjectOutputWrappedStorageStream((a), (b))
# endif
# endif # endif
#else #else
typedef JSScript JSScriptType; typedef JSScript JSScriptType;