r6839: Add support for building subsystems as shared libraries. This can be
authorJelmer Vernooij <jelmer@samba.org>
Tue, 17 May 2005 00:51:13 +0000 (00:51 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 18:16:50 +0000 (13:16 -0500)
done by setting:
OUTPUT_TYPE = SHARED_LIBRARY
in the [SUBSYSTEM::...] section belonging to a subsystem.

The idea is to allow multiple values to OUTPUT_TYPE simultaneously
(e.g. OUTPUT_TYPE = SHARED_LIBRARY, STATIC_LIBRARY, OBJLIST )

source/auth/config.mk
source/build/smb_build/input.pm
source/build/smb_build/makefile.pm
source/build/smb_build/output.pm
source/libcli/config.mk
source/librpc/config.mk
source/rpc_server/config.mk
source/torture/config.mk
source/utils/config.mk

index 39583185202527d6df30ceb4c208c33406be4337..3d2ccf05717cd4eed1f3bdb2c8144f34329a6065 100644 (file)
@@ -31,7 +31,7 @@ INIT_OBJ_FILES = \
                auth/auth_winbind.o
 REQUIRED_SUBSYSTEMS = \
                LIB_WINBIND_CLIENT \
-               NDR_NETLOGON LIBNDR
+               NDR_NETLOGON NDR
 # End MODULE auth_winbind
 #######################
 
@@ -43,7 +43,7 @@ SUBSYSTEM = AUTH
 INIT_OBJ_FILES = \
                auth/auth_domain.o
 REQUIRED_SUBSYSTEMS = \
-               NDR_NETLOGON LIBNDR
+               NDR_NETLOGON NDR
 # End MODULE auth_winbind
 #######################
 
index 8f0509692c7816d0803be56ab6ff8f5a2e341a04..72e978dfc59479f29a80106ae590dfe259e1248e 100644 (file)
@@ -10,7 +10,7 @@
 use strict;
 package input;
 
-my $subsystem_output_type = "OBJLIST";
+my $subsystem_default_output_type = "OBJLIST";
 my $srcdir = ".";
 
 sub strtrim($)
@@ -55,7 +55,9 @@ sub check_subsystem($$)
        }
        
        unless(defined($subsys->{OUTPUT_TYPE})) {
-               $subsys->{OUTPUT_TYPE} = $subsystem_output_type;
+               $subsys->{OUTPUT_TYPE} = $subsystem_default_output_type;
+       } else {
+               $subsys->{OUTPUT_TYPE} = join('', @{$subsys->{OUTPUT_TYPE}});
        }
 }
 
@@ -97,7 +99,7 @@ sub check_module($$)
                $mod->{ENABLE} = "YES";
                push (@{$CTX->{INPUT}{$mod->{SUBSYSTEM}}{REQUIRED_SUBSYSTEMS}}, $mod->{NAME});
                printf("Module: %s...static\n",$mod->{NAME});
-               $mod->{OUTPUT_TYPE} = $subsystem_output_type;
+               $mod->{OUTPUT_TYPE} = $subsystem_default_output_type;
        } else {
                $mod->{ENABLE} = "NO";
                printf("Module: %s...not\n",$mod->{NAME});
@@ -169,7 +171,7 @@ sub check($)
 {
        my $CTX = shift;
 
-       ($subsystem_output_type = $ENV{SUBSYSTEM_OUTPUT_TYPE}) if (defined($ENV{"SUBSYSTEM_OUTPUT_TYPE"}));
+       ($subsystem_default_output_type = $ENV{SUBSYSTEM_OUTPUT_TYPE}) if (defined($ENV{"SUBSYSTEM_OUTPUT_TYPE"}));
 
        foreach my $part (values %{$CTX->{INPUT}}) {
                ($part->{ENABLE} = "YES") if not defined($part->{ENABLE});
index 1eb1c6ea008b1ef4f046699a7b5e60a81ff6b537..317abb3c8b7cdf49507973e6d49ccd2c5bbc7e04 100644 (file)
@@ -88,13 +88,13 @@ CC=@CC@
 CC_FLAGS=-Iinclude -I. -I$(srcdir)/include -I$(srcdir) -D_SAMBA_BUILD_ -DHAVE_CONFIG_H -Ilib @CFLAGS@ @CPPFLAGS@
 
 LD=@CC@
-LD_FLAGS=@LDFLAGS@ @CFLAGS@
+LD_FLAGS=@LDFLAGS@ @CFLAGS@ -Lbin
 
 STLD=ar
 STLD_FLAGS=-rc
 
 SHLD=@CC@
-SHLD_FLAGS=@LDSHFLAGS@ @LDFLAGS@
+SHLD_FLAGS=@LDSHFLAGS@ @LDFLAGS@ -Lbin
 
 __EOD__
 
@@ -358,7 +358,6 @@ sub _prepare_shared_library_rule($)
        my $tmpshflag;
        my $tmprules;
        my $output;
-       my $outname = $ctx->{OUTPUT};
 
        $tmpdepend = array2oneperline($ctx->{DEPEND_LIST});
 
@@ -376,7 +375,7 @@ LIBRARY_$ctx->{NAME}_SHARED_LINK_FLAGS =$tmpshflag
 #
 
 # Shared $ctx->{LIBRARY_NAME}
-$ctx->{OUTPUT}: \$(LIBRARY_$ctx->{NAME}_DEPEND_LIST) bin/.dummy
+$ctx->{TARGET}: \$(LIBRARY_$ctx->{NAME}_DEPEND_LIST) bin/.dummy
        \@echo Linking \$\@
        \@\$(SHLD) \$(SHLD_FLAGS) -o \$\@ \\
                \$(LIBRARY_$ctx->{NAME}_SHARED_LINK_FLAGS) \\
@@ -396,11 +395,10 @@ bin/$ctx->{LIBRARY_NAME}: bin/$ctx->{LIBRARY_SONAME} bin/.dummy
        \@ln -sf $ctx->{LIBRARY_SONAME} \$\@
 
 __EOD__
-               $outname = $ctx->{LIBRARY_NAME};
        }
 
 $output .= << "__EOD__";
-library_$ctx->{NAME}: basics bin/$outname
+library_$ctx->{NAME}: basics bin/lib$ctx->{LIBRARY_NAME}
 # End Library $ctx->{NAME}
 ###################################
 
@@ -453,7 +451,7 @@ LIBRARY_$ctx->{NAME}_DEPEND_LIST =$tmpdepend
 LIBRARY_$ctx->{NAME}_STATIC_LINK_LIST =$tmpstlink
 #
 # Static $ctx->{LIBRARY_NAME}
-$ctx->{OUTPUT}: $(LIBRARY_$ctx->{NAME}_DEPEND_LIST) bin/.dummy
+$ctx->{TARGET}: $(LIBRARY_$ctx->{NAME}_DEPEND_LIST) bin/.dummy
        @echo Linking $@
        @$(STLD) $(STLD_FLAGS) $@ \\
                $(LIBRARY_$ctx->{NAME}_STATIC_LINK_LIST)
@@ -807,7 +805,7 @@ sub _prepare_makefile_in($)
        my @all = ();
        
        foreach my $part (values %{$CTX}) {
-               push (@all, $part->{OUTPUT}) if defined ($part->{OUTPUT_TYPE}) and $part->{OUTPUT_TYPE} eq "BINARY";    
+               push (@all, $part->{TARGET}) if defined ($part->{OUTPUT_TYPE}) and $part->{OUTPUT_TYPE} eq "BINARY";    
        }
        
        $output .= _prepare_make_target({ TARGET => "all", DEPEND_LIST => \@all });
index d2ee5a9165b66d9435951e08d4adea9bd78ed8d7..f6a9fc6eb3b8964b6b76868356720fadd5c4f023 100644 (file)
@@ -14,7 +14,7 @@ sub generate_objlist($)
 {
        my $subsys = shift;
 
-       $subsys->{OUTPUT} = "\$($subsys->{TYPE}_$subsys->{NAME}_OBJS)";
+       $subsys->{TARGET} = $subsys->{OUTPUT} = "\$($subsys->{TYPE}_$subsys->{NAME}_OBJS)";
 }
 
 sub generate_shared_library($)
@@ -23,14 +23,15 @@ sub generate_shared_library($)
 
        @{$lib->{DEPEND_LIST}} = ("\$($lib->{TYPE}_$lib->{NAME}\_OBJS)");
        @{$lib->{LINK_LIST}} = ("\$($lib->{TYPE}_$lib->{NAME}\_OBJS)");
-       $lib->{LIBRARY_NAME} = $lib->{NAME}.".so";
-       $lib->{OUTPUT} = "bin/$lib->{LIBRARY_NAME}";
+       $lib->{LIBRARY_NAME} = lc($lib->{NAME}).".so";
+       $lib->{TARGET} = "bin/lib$lib->{LIBRARY_NAME}";
        if (defined($lib->{MAJOR_VERSION})) {
                $lib->{LIBRARY_SONAME} = $lib->{LIBRARY_NAME}.".$lib->{MAJOR_VERSION}";
                $lib->{LIBRARY_REALNAME} = $lib->{LIBRARY_SONAME}.".$lib->{MINOR_VERSION}.$lib->{RELEASE_VERSION}";
-               $lib->{OUTPUT} = "bin/$lib->{LIBRARY_REALNAME}";
+               $lib->{TARGET} = "bin/lib$lib->{LIBRARY_REALNAME}";
                @{$lib->{LINK_FLAGS}} = ("\@SONAMEFLAG\@$lib->{LIBRARY_SONAME}");
        }
+       $lib->{OUTPUT} = "-l".lc($lib->{NAME});
 }
 
 sub generate_static_library($)
@@ -39,11 +40,12 @@ sub generate_static_library($)
 
        @{$lib->{DEPEND_LIST}} = ("\$($lib->{TYPE}_$lib->{NAME}\_OBJS)");
 
-       $lib->{LIBRARY_NAME} = $lib->{NAME}.".a";
+       $lib->{LIBRARY_NAME} = lc($lib->{NAME}).".a";
        @{$lib->{LINK_LIST}} = ("\$($lib->{TYPE}_$lib->{NAME}\_OBJS)");
        @{$lib->{LINK_FLAGS}} = ();
 
-       $lib->{OUTPUT} = "bin/$lib->{LIBRARY_NAME}";
+       $lib->{TARGET} = "bin/lib$lib->{LIBRARY_NAME}";
+       $lib->{OUTPUT} = "-l".lc($lib->{NAME});
 }
 
 sub generate_binary($)
@@ -54,7 +56,7 @@ sub generate_binary($)
        @{$bin->{LINK_LIST}} = ("\$($bin->{TYPE}_$bin->{NAME}\_OBJS)");
        @{$bin->{LINK_FLAGS}} = ();
 
-       $bin->{OUTPUT} = "bin/$bin->{NAME}";
+       $bin->{TARGET} = $bin->{OUTPUT} = "bin/$bin->{NAME}";
        $bin->{BINARY} = $bin->{NAME};
 }
 
@@ -93,7 +95,7 @@ sub create_output($)
 
                        push(@{$part->{CPPFLAGS}}, @{$elem->{CPPFLAGS}}) if defined(@{$elem->{CPPFLAGS}});
                        push(@{$part->{CFLAGS}}, @{$elem->{CFLAGS}}) if defined(@{$elem->{CFLAGS}});
-                       push(@{$part->{DEPEND_LIST}}, $elem->{OUTPUT}) if defined($elem->{OUTPUT});
+                       push(@{$part->{DEPEND_LIST}}, $elem->{TARGET}) if defined($elem->{TARGET});
                        push(@{$part->{LINK_LIST}}, $elem->{OUTPUT}) if defined($elem->{OUTPUT});
                        push(@{$part->{LINK_FLAGS}}, @{$elem->{LIBS}}) if defined($elem->{LIBS});
                        push(@{$part->{LINK_FLAGS}},@{$elem->{LDFLAGS}}) if defined($elem->{LDFLAGS});
index 834aa01daccfefa0f2110e353549bcfcaf2e54eb..acf61dc2d3df974fb47dfa80ff37807233b0b917 100644 (file)
@@ -35,7 +35,7 @@ ADD_OBJ_FILES = \
        libcli/nbt/nameregister.o \
        libcli/nbt/namerefresh.o \
        libcli/nbt/namerelease.o
-REQUIRED_SUBSYSTEMS = LIBNDR_RAW NDR_NBT SOCKET LIBCLI_COMPOSITE_BASE LIBEVENTS
+REQUIRED_SUBSYSTEMS = NDR_RAW NDR_NBT SOCKET LIBCLI_COMPOSITE_BASE LIBEVENTS
 
 [SUBSYSTEM::LIBCLI_DGRAM]
 ADD_OBJ_FILES = \
index 5fd89ff2ee47da98c461e977bb673cc9746b5045..2c8217afd74dd53bf1d27a94f4b00a1a0ed65e6d 100644 (file)
@@ -1,6 +1,6 @@
 ################################################
-# Start SUBSYSTEM LIBNDR_RAW
-[SUBSYSTEM::LIBNDR_RAW]
+# Start SUBSYSTEM NDR_RAW
+[SUBSYSTEM::NDR_RAW]
 INIT_OBJ_FILES = \
                librpc/ndr/ndr.o
 ADD_OBJ_FILES = \
@@ -10,15 +10,15 @@ ADD_OBJ_FILES = \
                librpc/ndr/ndr_obfuscate.o \
                librpc/ndr/ndr_misc.o
 REQUIRED_SUBSYSTEMS = LIBCLI_UTILS LIBCOMPRESSION
-# End SUBSYSTEM LIBNDR_RAW
+# End SUBSYSTEM NDR_RAW
 ################################################
 
-[SUBSYSTEM::LIBNDR]
-REQUIRED_SUBSYSTEMS = LIBNDR_RAW
+[SUBSYSTEM::NDR]
+REQUIRED_SUBSYSTEMS = NDR_RAW
 
 ################################################
-# Start SUBSYSTEM LIBRPC_RAW
-[SUBSYSTEM::LIBRPC_RAW]
+# Start SUBSYSTEM RPC_RAW
+[SUBSYSTEM::RPC_RAW]
 INIT_OBJ_FILES = \
                librpc/rpc/dcerpc.o
 ADD_OBJ_FILES = \
@@ -29,74 +29,74 @@ ADD_OBJ_FILES = \
                librpc/rpc/dcerpc_smb.o \
                librpc/rpc/dcerpc_sock.o
 REQUIRED_SUBSYSTEMS = SOCKET
-# End SUBSYSTEM LIBRPC_RAW
+# End SUBSYSTEM RPC_RAW
 ################################################
 
 [SUBSYSTEM::NDR_AUDIOSRV]
 INIT_FUNCTION = dcerpc_audiosrv_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_audiosrv.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_DCERPC]
 INIT_FUNCTION = dcerpc_dcerpc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_dcerpc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_ECHO]
 INIT_FUNCTION = dcerpc_echo_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_echo.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_EXCHANGE]
 INIT_FUNCTION = dcerpc_exchange_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_exchange.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_DSBACKUP]
 INIT_FUNCTION = dcerpc_dsbackup_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_dsbackup.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_EFS]
 INIT_FUNCTION = dcerpc_efs_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_efs.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_MISC]
 INIT_FUNCTION = dcerpc_misc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_misc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_ROT]
 INIT_FUNCTION = dcerpc_rot_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_rot.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_LSA]
 INIT_FUNCTION = dcerpc_lsa_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_lsa.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_DFS]
 INIT_FUNCTION = dcerpc_dfs_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_dfs.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_DRSUAPI]
 INIT_FUNCTION = dcerpc_drsuapi_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_drsuapi.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_DRSUAPI_PRINT
+REQUIRED_SUBSYSTEMS = NDR NDR_DRSUAPI_PRINT
 
 [SUBSYSTEM::NDR_DRSUAPI_PRINT]
 INIT_OBJ_FILES = librpc/ndr/ndr_drsuapi.o
@@ -105,25 +105,25 @@ INIT_OBJ_FILES = librpc/ndr/ndr_drsuapi.o
 INIT_FUNCTION = dcerpc_drsblobs_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_drsblobs.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_POLICYAGENT]
 INIT_FUNCTION = dcerpc_policyagent_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_policyagent.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_SAMR]
 INIT_FUNCTION = dcerpc_samr_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_samr.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_SPOOLSS]
 INIT_FUNCTION = dcerpc_spoolss_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_spoolss.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_SPOOLSS_BUF
+REQUIRED_SUBSYSTEMS = NDR NDR_SPOOLSS_BUF
 
 [SUBSYSTEM::NDR_SPOOLSS_BUF]
 INIT_OBJ_FILES = librpc/ndr/ndr_spoolss_buf.o
@@ -132,91 +132,91 @@ INIT_OBJ_FILES = librpc/ndr/ndr_spoolss_buf.o
 INIT_FUNCTION = dcerpc_wkssvc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_wkssvc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_SRVSVC]
 INIT_FUNCTION = dcerpc_srvsvc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_srvsvc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_SVCCTL
+REQUIRED_SUBSYSTEMS = NDR NDR_SVCCTL
 
 [SUBSYSTEM::NDR_SVCCTL]
 INIT_FUNCTION = dcerpc_svcctl_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_svcctl.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_ATSVC]
 INIT_FUNCTION = dcerpc_atsvc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_atsvc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_EVENTLOG]
 INIT_FUNCTION = dcerpc_eventlog_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_eventlog.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_EPMAPPER]
 INIT_FUNCTION = dcerpc_epmapper_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_epmapper.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_DBGIDL]
 INIT_FUNCTION = dcerpc_dbgidl_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_dbgidl.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_DSSETUP]
 INIT_FUNCTION = dcerpc_dssetup_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_dssetup.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_MSGSVC]
 INIT_FUNCTION = dcerpc_msgsvc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_msgsvc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_WINS]
 INIT_FUNCTION = dcerpc_wins_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_wins.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_WINREG]
 INIT_FUNCTION = dcerpc_winreg_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_winreg.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_INITSHUTDOWN
+REQUIRED_SUBSYSTEMS = NDR NDR_INITSHUTDOWN
 
 [SUBSYSTEM::NDR_INITSHUTDOWN]
 INIT_FUNCTION = dcerpc_initshutdown_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_initshutdown.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_MGMT]
 INIT_FUNCTION = dcerpc_mgmt_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_mgmt.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_PROTECTED_STORAGE]
 INIT_FUNCTION = dcerpc_protected_storage_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_protected_storage.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_DCOM]
 INIT_FUNCTION = dcerpc_dcom_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_dcom.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_ORPC
+REQUIRED_SUBSYSTEMS = NDR NDR_ORPC
 
 [SUBSYSTEM::NDR_ORPC_MANUAL]
 INIT_OBJ_FILES = librpc/ndr/ndr_orpc.o 
@@ -225,97 +225,97 @@ INIT_OBJ_FILES = librpc/ndr/ndr_orpc.o
 INIT_FUNCTION = dcerpc_orpc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_orpc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_ORPC_MANUAL
+REQUIRED_SUBSYSTEMS = NDR NDR_ORPC_MANUAL
 
 [SUBSYSTEM::NDR_OXIDRESOLVER]
 INIT_FUNCTION = dcerpc_oxidresolver_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_oxidresolver.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_ORPC
+REQUIRED_SUBSYSTEMS = NDR NDR_ORPC
 
 [SUBSYSTEM::NDR_REMACT]
 INIT_FUNCTION = dcerpc_remact_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_remact.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_ORPC
+REQUIRED_SUBSYSTEMS = NDR NDR_ORPC
 
 [SUBSYSTEM::NDR_WZCSVC]
 INIT_FUNCTION = dcerpc_wzcsvc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_wzcsvc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_BROWSER]
 INIT_FUNCTION = dcerpc_browser_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_browser.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_W32TIME]
 INIT_FUNCTION = dcerpc_w32time_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_w32time.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_SCERPC]
 INIT_FUNCTION = dcerpc_scerpc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_scerpc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_NTSVCS]
 INIT_FUNCTION = dcerpc_ntsvcs_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_ntsvcs.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_NETLOGON]
 INIT_FUNCTION = dcerpc_netlogon_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_netlogon.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_SAMR
+REQUIRED_SUBSYSTEMS = NDR NDR_SAMR
 
 [SUBSYSTEM::NDR_TRKWKS]
 INIT_FUNCTION = dcerpc_trkwks_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_trkwks.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_KEYSVC]
 INIT_FUNCTION = dcerpc_keysvc_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_keysvc.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_KRB5PAC]
 INIT_FUNCTION = dcerpc_krb5pac_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_krb5pac.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_XATTR]
 INIT_FUNCTION = dcerpc_xattr_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_xattr.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_SCHANNEL]
 INIT_FUNCTION = dcerpc_schannel_init
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_schannel.o
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR
+REQUIRED_SUBSYSTEMS = NDR
 
 [SUBSYSTEM::NDR_NBT]
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_nbt.o
 INIT_FUNCTION = dcerpc_nbt_init
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_MISC
+REQUIRED_SUBSYSTEMS = NDR NDR_MISC
 
 [SUBSYSTEM::NDR_WINSREPL]
 INIT_OBJ_FILES = librpc/gen_ndr/ndr_winsrepl.o
 INIT_FUNCTION = dcerpc_winsrepl_init
 NOPROTO = YES
-REQUIRED_SUBSYSTEMS = LIBNDR NDR_NBT
+REQUIRED_SUBSYSTEMS = NDR NDR_NBT
 
 
 [SUBSYSTEM::NDR_ALL]
@@ -331,197 +331,197 @@ REQUIRED_SUBSYSTEMS = NDR_AUDIOSRV NDR_ECHO NDR_DCERPC NDR_EXCHANGE \
 
 [SUBSYSTEM::RPC_NDR_ROT]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_rot_c.o
-REQUIRED_SUBSYSTEMS = NDR_ROT LIBRPC
+REQUIRED_SUBSYSTEMS = NDR_ROT RPC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_AUDIOSRV]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_audiosrv_c.o
-REQUIRED_SUBSYSTEMS = NDR_AUDIOSRV LIBRPC
+REQUIRED_SUBSYSTEMS = NDR_AUDIOSRV RPC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_ECHO]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_echo_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_ECHO
+REQUIRED_SUBSYSTEMS = RPC NDR_ECHO
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_EXCHANGE]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_exchange_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_EXCHANGE
+REQUIRED_SUBSYSTEMS = RPC NDR_EXCHANGE
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_DSBACKUP]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_dsbackup_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_DSBACKUP
+REQUIRED_SUBSYSTEMS = RPC NDR_DSBACKUP
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_EFS]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_efs_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_EFS
+REQUIRED_SUBSYSTEMS = RPC NDR_EFS
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_LSA]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_lsa_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_LSA
+REQUIRED_SUBSYSTEMS = RPC NDR_LSA
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_DFS]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_dfs_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_DFS
+REQUIRED_SUBSYSTEMS = RPC NDR_DFS
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_DRSUAPI]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_drsuapi_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_DRSUAPI
+REQUIRED_SUBSYSTEMS = RPC NDR_DRSUAPI
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_DRSBLOBS]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_drsblobs_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_DRSBLOBS
+REQUIRED_SUBSYSTEMS = RPC NDR_DRSBLOBS
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_POLICYAGENT]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_policyagent_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_POLICYAGENT
+REQUIRED_SUBSYSTEMS = RPC NDR_POLICYAGENT
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_SAMR]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_samr_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_SAMR
+REQUIRED_SUBSYSTEMS = RPC NDR_SAMR
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_SPOOLSS]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_spoolss_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_SPOOLSS
+REQUIRED_SUBSYSTEMS = RPC NDR_SPOOLSS
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_WKSSVC]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_wkssvc_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_WKSSVC
+REQUIRED_SUBSYSTEMS = RPC NDR_WKSSVC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_SRVSVC]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_srvsvc_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_SRVSVC
+REQUIRED_SUBSYSTEMS = RPC NDR_SRVSVC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_SVCCTL]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_svcctl_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_SVCCTL
+REQUIRED_SUBSYSTEMS = RPC NDR_SVCCTL
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_ATSVC]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_atsvc_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_ATSVC
+REQUIRED_SUBSYSTEMS = RPC NDR_ATSVC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_EVENTLOG]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_eventlog_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_EVENTLOG
+REQUIRED_SUBSYSTEMS = RPC NDR_EVENTLOG
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_EPMAPPER]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_epmapper_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_EPMAPPER
+REQUIRED_SUBSYSTEMS = RPC NDR_EPMAPPER
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_DBGIDL]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_dbgidl_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_DBGIDL
+REQUIRED_SUBSYSTEMS = RPC NDR_DBGIDL
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_DSSETUP]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_dssetup_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_DSSETUP
+REQUIRED_SUBSYSTEMS = RPC NDR_DSSETUP
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_MSGSVC]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_msgsvc_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_MSGSVC
+REQUIRED_SUBSYSTEMS = RPC NDR_MSGSVC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_WINS]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_wins_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_WINS
+REQUIRED_SUBSYSTEMS = RPC NDR_WINS
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_WINREG]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_winreg_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_WINREG
+REQUIRED_SUBSYSTEMS = RPC NDR_WINREG
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_INITSHUTDOWN]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_initshutdown_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_INITSHUTDOWN
+REQUIRED_SUBSYSTEMS = RPC NDR_INITSHUTDOWN
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_MGMT]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_mgmt_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_MGMT
+REQUIRED_SUBSYSTEMS = RPC NDR_MGMT
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_PROTECTED_STORAGE]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_protected_storage_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_PROTECTED_STORAGE
+REQUIRED_SUBSYSTEMS = RPC NDR_PROTECTED_STORAGE
 NOPROTO = YES
 
 [SUBSYSTEM::DCOM_PROXY_DCOM]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_dcom_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_DCOM
+REQUIRED_SUBSYSTEMS = RPC NDR_DCOM
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_OXIDRESOLVER]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_oxidresolver_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_OXIDRESOLVER
+REQUIRED_SUBSYSTEMS = RPC NDR_OXIDRESOLVER
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_REMACT]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_remact_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_REMACT
+REQUIRED_SUBSYSTEMS = RPC NDR_REMACT
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_WZCSVC]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_wzcsvc_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_WZCSVC
+REQUIRED_SUBSYSTEMS = RPC NDR_WZCSVC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_BROWSER]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_browser_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_BROWSER
+REQUIRED_SUBSYSTEMS = RPC NDR_BROWSER
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_W32TIME]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_w32time_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_W32TIME
+REQUIRED_SUBSYSTEMS = RPC NDR_W32TIME
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_SCERPC]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_scerpc_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_SCERPC
+REQUIRED_SUBSYSTEMS = RPC NDR_SCERPC
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_NTSVCS]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_ntsvcs_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_NTSVCS
+REQUIRED_SUBSYSTEMS = RPC NDR_NTSVCS
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_NETLOGON]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_netlogon_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_NETLOGON
+REQUIRED_SUBSYSTEMS = RPC NDR_NETLOGON
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_TRKWKS]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_trkwks_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_TRKWKS
+REQUIRED_SUBSYSTEMS = RPC NDR_TRKWKS
 NOPROTO = YES
 
 [SUBSYSTEM::RPC_NDR_KEYSVC]
 ADD_OBJ_FILES = librpc/gen_ndr/ndr_keysvc_c.o
-REQUIRED_SUBSYSTEMS = LIBRPC NDR_KEYSVC
+REQUIRED_SUBSYSTEMS = RPC NDR_KEYSVC
 NOPROTO = YES
 
 ################################################
-# Start SUBSYSTEM LIBRPC
-[SUBSYSTEM::LIBRPC]
-REQUIRED_SUBSYSTEMS = LIBNDR_RAW LIBRPC_RAW LIBSMB NDR_MISC NDR_DCERPC NDR_SCHANNEL NDR_LSA NDR_NETLOGON NDR_SAMR RPC_NDR_NETLOGON RPC_NDR_EPMAPPER
-# End SUBSYSTEM LIBRPC
+# Start SUBSYSTEM RPC
+[SUBSYSTEM::RPC]
+REQUIRED_SUBSYSTEMS = NDR_RAW RPC_RAW LIBSMB NDR_MISC NDR_DCERPC NDR_SCHANNEL NDR_LSA NDR_NETLOGON NDR_SAMR RPC_NDR_NETLOGON RPC_NDR_EPMAPPER
+# End SUBSYSTEM RPC
 ################################################
index a3dfd3de516540cc754c8ac27febc39808163289..e9abd726e499adb68de2cf33c7531d38fa7cd969 100644 (file)
@@ -199,7 +199,7 @@ ADD_OBJ_FILES = \
                rpc_server/handles.o
 REQUIRED_SUBSYSTEMS = \
                LIBCLI_AUTH \
-               LIBNDR
+               NDR
 #
 # End SUBSYSTEM DCERPC
 ################################################
index 128a5cafc9130941079890a3ce79afb442e77a51..7b8ebe3e100ece8e0d8af31b79089ed2a28fdc46 100644 (file)
@@ -231,7 +231,7 @@ REQUIRED_SUBSYSTEMS = \
                CONFIG \
                LIBBASIC \
                LIBCMDLINE \
-               LIBRPC
+               RPC
 # End BINARY gentest
 #################################
 
@@ -245,7 +245,7 @@ REQUIRED_SUBSYSTEMS = \
                CONFIG \
                LIBBASIC \
                LIBCMDLINE \
-               LIBRPC
+               RPC
 # End BINARY masktest
 #################################
 
@@ -260,6 +260,6 @@ REQUIRED_SUBSYSTEMS = \
                CONFIG \
                LIBBASIC \
                LIBCMDLINE \
-               LIBRPC
+               RPC
 # End BINARY locktest
 #################################
index 58aafe3c2493d5be9a416a1807761a9d09fcd0ce..1854042d65a6d1f8c820487944530cba9438c333 100644 (file)
@@ -10,8 +10,8 @@ REQUIRED_SUBSYSTEMS = \
                LIBCMDLINE \
                LIBBASIC \
                NDR_ALL \
-               LIBRPC
-# FIXME: ndrdump shouldn't have to depend on LIBRPC...
+               RPC
+# FIXME: ndrdump shouldn't have to depend on RPC...
 # End BINARY ndrdump
 #################################
 
@@ -25,7 +25,7 @@ REQUIRED_SUBSYSTEMS = \
                LIBCMDLINE \
                LIBBASIC \
                LIBSMB \
-               LIBRPC
+               RPC
 # End BINARY ntlm_auth
 #################################
 
@@ -38,7 +38,7 @@ REQUIRED_SUBSYSTEMS = \
                CONFIG \
                LIBCMDLINE \
                LIBBASIC \
-               LIBRPC \
+               RPC \
                NDR_XATTR
 # End BINARY getntacl
 #################################
@@ -52,7 +52,7 @@ REQUIRED_SUBSYSTEMS = \
                CONFIG \
                LIBCMDLINE \
                LIBBASIC \
-               LIBRPC
+               RPC
 # End BINARY setntacl
 #################################
 
@@ -65,7 +65,7 @@ REQUIRED_SUBSYSTEMS = \
                CONFIG \
                LIBCMDLINE \
                LIBBASIC \
-               LIBRPC \
+               RPC \
                NDR_XATTR \
                NDR_SAMR
 # End BINARY setnttoken